您的位置:首页 > 数据库

一次svn数据库的崩溃错误的解决

2014-06-23 16:53 337 查看
作者:朱金灿
来源:http://blog.csdn.net/clever101

同事更新一个svn数据库,出现一个错误:打开文件系统的BDB环境句柄时出错,具体如下图:



上网没搜到相关资料。于是想到svn是开源软件,或许从它的源码中可以查到什么相关错误信息,于是下载svn服务端的源码,下载地址是:subversion源码。从它的源码中找到是这个函数触发的:svn_fs_base__retry。但是依然没有找到思路。

估计这个数据库已经坏了,于是登录服务器来修复数据库,运行命令:
svnadmin recover E:\Repository\doc
提示完成修复。
最新的版本库版本是 141。

然后再更新svn数据库,依然出现上面提到的错误。于是又想到新建一个svn数据库,然后将旧库备份出来再导入到新库中,运行命令:svnadmin dump E:\Repository\doc > E:\workspace\doc.dump

结果备份出错,提示:
svnadmin: E160029: 打开文件系统“E:/Repository/doc/db”的BDB环境句柄时出错:
svnadmin: E160029: DB_RUNRECOVERY: Fatal error, run database recovery
svnadmin: E000000: bdb: PANIC: fatal region error detected; run recovery

最后只好放弃原有的svn数据库,重新建库导入数据,这算是绕开了这个错误。

参考文献:
1. Subversion常见问题
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: