【问题标题】:MSSQL mirroring error 1499MSSQL 镜像错误 1499
【发布时间】:2012-03-28 13:00:43
【问题描述】:

我的镜像有问题。我已经使用此功能使 2 db 工作。
但它是在测试基地。 现在,当我在工作数据库上使用我的脚本时,它会引发错误:

Msg 1499, Level 16, State 1, Line 1
Database mirroring error: status 1488, severity 16, state 1, string db_name.

有什么建议吗?

【问题讨论】:

    标签: sql-server mirroring


    【解决方案1】:

    您的数据库可能处于单用户模式

    右击数据库 -> 选项并在限制访问下选择 MULTI USER

    【讨论】:

    • 当然我的委托人处于单用户模式...否则我怎样才能在工作数据库不断变化时使它们完全相同。你确定是因为SM?
    • 它是镜像数据库,需要在单用户中,而不是主体中
    • 镜像数据库必须与主体完全相同。一旦主体发生变化,我必须再次备份它。所以我在SM做到了。
    • 同意但是你说principal是single mode,但是mirror需要single mode
    • 所以我需要把两个db都放到SM里,设置partners,把principal放到MM里?
    【解决方案2】:

    尝试检查主体和镜像服务器名称、数据库名称等。可能存在打印错误。

    【讨论】:

      【解决方案3】:

      这件事最近发生在我们身上。我们发现在还原过程中,SQL 将还原的数据库设置为单用户模式。

      经过一番研究,我们简单地重启了镜像上的 SQL Server 服务。当 SQL 启动备份时,恢复的数据库处于多用户模式,我们能够毫无问题地初始化镜像。

      还有其他网站也提供答案,但它们涉及删除主要数据库。当时这对我们来说并不是一个真正的选择。这是一个示例,以防重新启动镜像对遇到此问题的下一个人没有帮助。

      http://blog.armgasys.com/?p=259

      【讨论】:

        【解决方案4】:

        我遇到了一些类似的问题,这就是我解决它的方法。当我运行镜像向导时,它成功创建了端点(第一部分),但是当我尝试打开镜像时,它给了我错误。 所以我通过在两台服务器上运行以下命令来解决它

        USE [master]
        alter database [yourdatabase] set partner off;
        go
        

        --Secondary 已有合作伙伴,Primary 没有

        --- 然后我在每台服务器上运行以下命令。

        USE [master]
        ALTER DATABASE [yourdatabase]
        SET PARTNER = 'TCP://OtherMachineSQLname.domain.LOCAL:5022';
        GO
        

        -- 然后镜像开始工作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-12-19
          • 1970-01-01
          • 1970-01-01
          • 2010-10-09
          • 2020-06-19
          相关资源
          最近更新 更多