电脑技术学习

使用 SQL Server 2005 数据库镜像功能时需要考虑的问题

dn001

简介
目前,Microsoft 支持策略不适用于 Microsoft SQL Server 2005 中的数据库镜像功能。

默认情况下,数据库镜像是禁用的。但是,只需使用跟踪标志 1400 作为启动参数,您就可以出于评估目的而启用数据库镜像。不应该在生产环境中使用数据库镜像。Microsoft 产品支持服务不支持使用数据库镜像的数据库或应用程序。SQL Server 2005 中包含的数据库镜像文档仅用于评估目的。此外,SQL Server 2005 支持和升级的文档策略不适用于数据库镜像文档。

使用跟踪标志 1400 启动 SQL Server 2005 实例之后,您就可以设置和评估数据库镜像了。有关更多信息,请参阅 SQL Server 2005 联机丛书。

注意:跟踪标志 1400 是个临时标志。 当数据库镜像可用于常规生产时,跟踪标志 1400 将被删除。

更多信息
使用 SQL Server 2005 的数据库镜像时,请考虑以下问题。

准备升级到 SQL Server 2005 最终版本
升级前将恢复队列大小设置为 UNLIMITED
在 SQL Server 2005 的最终版本中,UNLIMITED 值是唯一受支持的恢复队列大小。此外,不支持 ALTER DATABASE 语句的 SET PARTNER REDO_QUEUE 选项。 为了避免数据库镜像以后产生问题,在升级前您必须将所有不一致的数据库大小重置为 UNLIMITED 值。

要查看某个 SQL Server 实例的数据库恢复队列设置,请参阅 sys.database_mirroring 目录视图中的 mirroring_redo_queue_type 列。镜像数据库支持的唯一值为 UNLIMITED。如果数据库的值为 MB,则在当前主体服务器上对该数据库执行以下 Transact-SQL 语句。ALTER DATABASE <database_name> SET PARTNER REDO_QUEUE UNLIMITED
在升级任一合作伙伴前,暂停或停止数据库镜像
如果某一合作伙伴正在运行 SQL Server 2005 的最终版本,而其他合作伙伴运行的是 SQL Server 2005 的预发布版本,数据库镜像将无法运行。在升级任一合作伙伴前,应暂停或停止所有数据库镜像会话的数据库镜像。然后,升级所有合作伙伴并恢复数据库镜像。

设置并评估数据库镜像
不支持 ALTER DATABASE 语句的 SET PARTNER REDO_QUEUE 选项。UNLIMITED 值是唯一受支持的恢复队列大小。

处理主体服务器上的日志驱动器出现的问题
如果主体服务器上的日志驱动器出现了问题,已发送到镜像服务器的日志记录和在镜像数据库上重播的日志记录就可能从不会写入主体服务器的磁盘。这种情况下,此处创建的日志备份无法应用于镜像数据库。因此,请确保数据库镜像会话的持续运行。只要数据库镜像会话运行正常,您就能修复该日志驱动器的问题或者切换合作伙伴角色。您可以通过数据库镜像故障转移和重新同步或强制为镜像数据库提供服务来切换合作伙伴角色。如果您强制为镜像数据库提供服务,所有尚未到达镜像服务器的新日志记录都将丢失。

重要说明:保持数据库镜像运行。如果您关闭数据库镜像,则必须执行完全备份并还原数据库以重建数据库镜像。