Sql Anywhere 11:恢复增量备份失败

前端之家收集整理的这篇文章主要介绍了Sql Anywhere 11:恢复增量备份失败前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们希望在完全备份后创建远程增量备份.这将允许我们在发生故障时进行恢复,并使用sql Anywhere网络服务器启动另一台尽可能接近实时备份的计算机.

我们正在进行如下完整备份:

dbbackup -y -c "eng=ServerName.DbName;uid=dba;pwd=sql;links=tcpip(host=ServerName)"
    c:\backuppath\full

这使得备份数据库和日志文件,并可以按预期还原.对于增量备份,如果有多个增量备份,我已尝试使用重命名方案的实时和增量事务日志:

dbbackup -y -t -c "eng=ServerName.DbName;uid=dba;pwd=sql;links=tcpip(host=ServerName)"
    c:\backuppath\inc

dbbackup -y -l -c "eng=ServerName.DbName;uid=dba;pwd=sql;links=tcpip(host=ServerName)" 
    c:\backuppath\live

但是,在还原时应用事务日志时,在将事务日志应用于数据库时始终会收到错误

10092: Unable to find table definition for table referenced in transaction log

事务日志恢复命令是:

dbeng11 "c:\dbpath\dbname.db" -a "c:\backuppath\dbname.log"

错误未指定它找不到的表,但这是一个受控测试,并且没有创建或删除表.我插入几行,然后在尝试恢复之前启动增量备份.

有谁知道在sql Anywhere 11上进行增量备份和恢复的正确方法

更新:认为它可能与目标数据库的复杂性有关,我创建了一个新的空白数据库和网络服务.然后添加一个包含两列的表并插入几行.进行完整备份,然后插入并删除更多行和已提交的事务,然后进行增量备份.在还原完整备份后尝试应用事务日志的增量备份时,这也会失败并出现相同的错误

编辑:

您可以点击此链接查看相同的问题,并在SA:http://sqlanywhere-forum.sybase.com/questions/4760/restoring-incrementallive-backup-failure上获得更多反馈

解决方法

总结上面帖子中链接的信息….

您使用的命令是实时备份,但您想要的是增量备份.您要使用的方法(根据this blog)使用稍微不同的开关.您希望使用-n -t -x开关,并使用-o指定日志文件.所以命令最终会像:

dbbackup -n -t -x -c "eng=ServerName.DbName;uid=dba;pwd=sql;links=tcpip(host=ServerName)" -o "c:\backup\backup_log.txt"

猜你在找的MsSQL相关文章