首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >奇怪的数据库镜像问题

奇怪的数据库镜像问题
EN

Database Administration用户
提问于 2016-04-03 18:56:23
回答 2查看 2.3K关注 0票数 4

我注意到Server 2012 (标准版)上的DB镜像出现了一个奇怪的问题。镜像被设置,并成功地建立并工作。没有目击证人。

一旦重新启动主体,所有数据库都会陷入恢复模式,从而使DBs无法访问。镜像也会发生同样的情况,当服务器重新启动时,DBs将被困在恢复过程中。为了退出恢复,需要停止端点并重新启动。我检查了以下内容:

  1. 镜像在正常设置期间工作。
  2. 帐户具有建立镜像的权限。
  3. 所有DBs都有业主,即sa。
  4. server在域帐户下运行,并且所有者是服务器上的sysadmin。我还向端点提供了明确的授权/授权。
  5. 错误日志(启动)表明端点已经启动。

为了使DB再次可访问,将执行以下代码:

代码语言:javascript
复制
ALTER ENDPOINT mirroring STATE = STOPPED

ALTER ENDPOINT mirroring STATE = STARTED

执行上述查询后,DBs返回到正常状态。

启动错误日志:

在端点配置中禁用了2016-0403 14:03:24.900 spid18s数据库镜像传输。2016-0403 14:03:30.240 spid28s数据库镜像端点现在正在侦听连接。

然后是数据库镜像,数据库'DatabaseName‘作为主副本是活动的。

在执行上述代码之后:

2016-0403 14:12:42.500 spid67数据库镜像端点已停止侦听连接。

因为我要阻止它

2016-0403 14:12:46.530 spid67数据库镜像端点现在正在侦听连接。

因为这是我开始的

此时,数据库镜像是活动的,数据库'DatabaseName‘作为主体副本再次出现。

提前谢谢。

EN

回答 2

Database Administration用户

发布于 2016-06-08 20:51:43

我建议使用构建另一个系统,并将其配置为见证服务器。然后将您的操作模式设置为“具有自动故障转移(同步)的高安全性”。

这个解决方案将减轻你的这个问题。您将为桌面windows许可证支付费用,但正如您可能已经知道的那样,在金钱上是免费的。

票数 1
EN

Database Administration用户

发布于 2016-04-07 09:31:41

在我看来,镜像设置的方式似乎有问题。

您可以在主体数据库所在的服务器上使用下面的查询。

这将给你一些能见度,因为事情已经建立。

代码语言:javascript
复制
--==============================================================================
-- query that shows the current state of each database in the mirroring
--==============================================================================
  SELECT   db_name(sd.[database_id])              AS [Database Name]
          ,sd.mirroring_state                  AS [Mirror State]
          ,sd.mirroring_state_desc             AS [Mirror State] 
          ,sd.mirroring_partner_name           AS [Partner Name]
          ,sd.mirroring_role_desc              AS [Mirror Role]  
          ,sd.mirroring_safety_level_desc      AS [Safety Level]
          ,sd.mirroring_witness_name           AS [Witness]
          ,sd.mirroring_connection_timeout AS [Timeout(sec)]
    FROM sys.database_mirroring AS sd
    WHERE mirroring_guid IS NOT null
    ORDER BY [Database Name];

这是输出的一个例子。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/134233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档