subversion 数据恢复求助
原来公司使用的subversion服务器一直正常(别人配置),由于本人疏忽,没有采用正确的备份方法,恰好公司subversion 的存储类型又为Berkely DB,而我一直备份subversion代码仓库都是直接tar整个目录打成一个包,再传到其他服务器上,但最近两天,老的subversion服务器已经彻底瘫痪,今天重新搭建了一台subversion和apache集成方式访问subversion服务器,并把原有仓库拷贝到新服务器上,发现不能正常使用访问,报告错误为:
[Wed Sep 10 12:00:00 2008] [error] [client 10.10.100.182] (20014)Internal error: Berkeley DB error for filesystem '/home/svnadmin/repos/WAP/db' while opening environment:n
[Wed Sep 10 12:00:00 2008] [error] [client 10.10.100.182] Could not fetch resource information. [500, #0]
[Wed Sep 10 12:00:00 2008] [error] [client 10.10.100.182] Could not open the requested SVN filesystem [500, #160029]
[Wed Sep 10 12:00:00 2008] [error] [client 10.10.100.182] Could not open the requested SVN filesystem [500, #160029]
,后为了验证是否配置错误,自己svnadmin create创建了一个仓库,并且选择指定类型为 dbd方式,可以正常check in 和check out,说明配置是没问题的。
然后试着采用
svnadmin dump /home/svnadmin/repos/Wap/ >/home/caihui/Wap.txt
也会报告错误
svnadmin: DB_RUNRECOVERY: Fatal error, run database recovery
svnadmin: bdb: Ignoring log file: /home/svnadmin/repos/Wap/db/log.0000000088: unsupported log version 11
svnadmin: bdb: Invalid log file: log.0000000088: Invalid argument
svnadmin: bdb: PANIC: Invalid argument
svnadmin: bdb: PANIC: DB_RUNRECOVERY: Fatal error, run database recovery
请问这主要是什么原因造成的,我也曾经用原来老服务器上包进行安装,故障依旧。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
好的,谢谢。关键我现在都不知道原来安装的是那个版本,服务器已经崩溃了,是别人安装的!
bd 的数据库直接热拷备是不安全的,所以你的备份中,可能一有部分是有问题的(应该有很多份备份吧?)。
首先你要构建一个和旧的 svn 服务一样的环境(svn 版本, bd 版本都和原来的一致的)环境,把原来的仓库使用 svnadmin dump 出来,再 load 到新的服务器上。
[ 本帖最后由 walte 于 2008-9-11 14:44 编辑 ]