Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 数据库管理 » 维护数据库 » 备份和数据恢复

 

备份参与同步和复制的数据库

如果您的数据库属于 SQL Remote 安装的一部分,则消息代理必须能够访问旧事务。如果它是统一数据库,则它保留整个 SQL Remote 安装的主副本,并且必须执行整个备份过程,以确保数据不会丢失。

如果您的数据库是 [复制服务器] 安装的主站点,则 [复制代理] 需要能够访问旧事务。但是,磁盘空间限制常常使事务日志无限增大变得不切实际。

如果您的数据库参与使用 dbmlsync 进行的 MobiLink 安装,则需要注意相同的事项。但是,如果您的数据库是 MobiLink 统一数据库,则不需要旧事务日志。

在同步和复制环境中,您可以选择备份选项来重命名和重新启动事务日志。此类备份可防止事务日志无限增大,同时维护有关旧事务的信息。

下图阐释这种备份。

对于复制中包括的数据库,数据库文件和日志文件均被复制到备份目录中。事务日志得到重新命名,而数据库文件则保持不变。[消息代理] 和 [复制代理] 仍然可以使用有关旧事务的信息。

有关详细信息,请参见执行备份和重命名原始事务日志

备份过程在远程数据库上并不像在统一数据库上那样重要。您可以选择将复制统一数据库作为数据备份方法。一旦介质发生故障,必须从统一数据库中重新抽取远程数据库,任何未复制的操作都将丢失。(您可以使用翻译日志文件实用程序来尝试恢复丢失的操作。请参见翻译日志文件实用程序 (dbtran)

即使您确实选择依靠复制来保护远程数据库数据,也仍需定期在远程数据库上进行备份,以防止事务日志变得过大。您应该使用在统一数据库中使用的那些选项(重命名和重新启动日志)运行消息代理,使其能够访问已重命名的日志文件。如果您在远程数据库中将 delete_old_logs 选项设置为 On,则当不再需要旧事务日志时,消息代理会自动将其删除。

在 SQL Remote 中自动重命名事务日志

如果使用 -x 消息代理选项,则当数据库服务器关闭时,无需重命名远程计算机上的事务日志。-x 选项在事务日志被扫描以检查是否有外发消息之后将对该事务日志进行重命名。请参见消息代理 (dbremote)


管理事务日志