如何恢复Berkeley DB(包含在Sun Grid Engine安装中)?

我在CentOS 5上。

[root@newjanux spooldb]# uname -a Linux newjanux 2.6.18-164.el5 #1 SMP Thu Sep 3 03:28:30 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux 

和SGE 6.2u2

我已经有了原始数据库的副本,以防万一… berkeley数据库不会开始腐败。 这个工具可以解决这个问题,但是却失败了(用同样的方法):

 [root@newjanux spooldb]# /opt/sge/utilbin/lx24-amd64/db_recover -v -c Finding last valid log LSN: file: 2136 offset 2719640 db_recover: Log file corrupt at LSN: [399][10485626] db_recover: PANIC: Invalid argument db_recover: DB_ENV->open: DB_RUNRECOVERY: Fatal error, run database recovery 

那么,我以为我正在运行数据库恢复!

怎么办?

当使用-c选项时,必须恢复数据库的干净副本以及在备份副本之后生成的所有日志。 -c选项然后使用日志来应用缺less的事务。

请参阅http://docs.oracle.com/cd/E17275_01/html/programmer_reference/transapp_recovery.html