我正在尝试在 SQL Server 2008R2 中设置数据库镜像。我已经从我的主数据库中进行了完整备份和事务备份,并且我都恢复了WITH NORECOVERY
.
但是,我的镜像数据库现在卡在RECOVERING
模式下,当我在主体上点击“开始镜像”时,它说它无法连接。
我究竟做错了什么?
编辑:我可能应该说我的数据库相当大(mdf 文件大约 4.8GB)所以这可能就是原因。
Edit2:我也试过在两个防火墙都关闭的情况下这样做,所以我知道这不是防火墙问题。
Edit3:我已经运行了 Mark 建议的 SQL。主要结果在这里: http: //piersonthe.net/principal.xls和镜像在这里: http: //piersonthe.net/mirror.xls
值得注意的是,我在镜像上运行查询时遇到以下错误: Msg 927, Level 14, State 2, Line 1 Database 'RHSCMSSites' 无法打开。它正处于恢复过程中。
毕竟其中一台服务器没有在同一用户下运行 SQL Server 服务。我是个白痴。
恢复是数据库处于您必须进入的阶段的正确状态。
首先,在镜像和原则上编写端点脚本,并检查端口是否是您期望的端口,并且您可以从两台服务器远程登录到这两个端口。仔细检查端点状态是否为“已启动”。
其次,如果端点符合预期并且您已确认连接正常,请尝试从 TSQL 启动镜像。顺序(在数据库和日志恢复之后)应该是:
编辑:上面的步骤没有帮助,接下来......
您能否在两台服务器上运行以下脚本并发布输出:
你不应该恢复它
with recovery
,这会留下一个活动的数据库。要应用事务日志,您需要使用with norecovery
(恢复)或with standby
(只读)。