【发布时间】:2015-10-02 00:04:09
【问题描述】:
我的问题和this post非常相似。
我尝试了很多组合都无济于事。在 ServerA 上,我使用以下命令创建了备份:
db2 backup db mydb user myuser using mypass online to
c:\db-backup\local include logs without prompting
然后我将该文件复制到 ServerB,然后运行:
db2 => restore database mydb user myuser using mypass from C:\
TAKEN AT 20151001060002 logtarget C:\DB2\NODE0000\LOGS replace
existing without prompting
我不确定如何正确处理 logtarget,该命令的结果是这个警告:
SQL2540W Restore is successful, however a warning "2523" was
encountere during Database Restore while processing in No Interrupt
mode.
我阅读了警告,它似乎适合我正在做的事情:
SQL2523W Warning! Restoring to an existing database that is different
from the database on the backup image, but have matching names. (more)
然后我运行了这个:
db2 => rollforward database mydb user myuser using mypass to end of
logs and stop
收到了这个:
SQL1268N Roll-forward recovery stopped due to error "1" while
retrieving log file "S0002796.LOG" for database "MYDB" on node "0".
我尝试过很多这样的组合:
db2 => restore database mydb user myuser using mypass from C:\ TAKEN
AT 20151001060002 WITHOUT ROLLING FORWARD
得到了这个:
SQL2537N Roll-forward is required following the Restore.
我现在卡住了。任何帮助将不胜感激。
【问题讨论】:
-
试试
rollforward database mydb user myuser using mypass to end of logs overflow log path (C:\DB2\NODE0000\LOGS)(希望这不是活动日志目录)。 -
感谢您的建议,不幸的是我再次收到此错误
SQL1268N Roll-forward recovery stopped due to error "1" while retrieving log file "S0002797.LOG" for database "MYDB" on node "0".我提供的日志路径只是一个空目录,它需要是特定位置吗? -
然后添加
noretrieve选项。为什么是“C:\DB2\NODE0000\LOGS”? -
成功了,非常感谢。我运行了这个命令
db2 rollforward database mydb user myuser using mypass to end of logs and stop overflow log path (C:\DB2\NODE0000\LOGS) noretrieve。如果您想在这篇文章中添加答案,我可以接受。再次感谢您的帮助。
标签: db2 database-restore db2-luw