数据库镜像在SQL Server中显示错误消息

我有两个SQL Server 2014标准版的实例

  • MSSQLSERVER(初级)
  • 192.168.10.131/MIRROR(MIRROR)
  • 所有数据库都在WINDOWS SERVER 2012 R2的同一台机器上

    首先我从MSSQLSERVER(PRIMARY)备份AdventureWorks2014并恢复数据库
    192.168.10.131/MIRROR with RESTORE WITH NO RECOVERY

    还原数据库 - >选项 - >恢复状态 - >没有恢复时恢复

    然后我把日志MSSQLSERVER(PRIMARY)

    backup log [AdventureWorks2014] to disk ='c:LOGBACKUPAdventureWorks2014.trn'
    

    然后我将日志恢复到192.168.10.131/MIRROR(MIRROR)

    restore log [AdventureWorks2014] from disk ='c:LOGBACKUPAdventureWorks2014.trn' with norecovery
    

    好吧,然后在AdventureWorks2014中使用 MSSQLSERVER(PRIMARY)

    RIGHT CLICK->TASK->MIRROR and CONFIGURE SECURITY option
    

    在这里输入图像描述

    在这里输入图像描述

    在这里输入图像描述

    在这里输入图像描述

    在这里输入图像描述

    在这里输入图像描述

    在这里输入图像描述

    但是当我开始镜像它显示下面的窗口

    在这里输入图像描述

    点击是的错误信息 在这里输入图像描述

    我的过程中出了什么问题? 我应该做什么配置?


    您可能还想查看端口5023是否打开。

  • 从命令提示符 - 键入以下内容。
  • Telnet Waltonserver 5023

    2。 如果您没有安装telnet,请首先执行以下操作。

    https://technet.microsoft.com/en-us/library/cc771275(v=ws.10).aspx

  • 在安装telnet之后,在您知道在端口1433上运行的服务器上测试您的telnet
  • Telnet ServerName 1433

    如果这样做,你会得到一个打开的盒子,你可以输入。 如果失败,您将收到一条消息....无法在端口1433上打开与主机的连接。如果您可以通过端口1433 telnet到其他服务器,但不通过端口5023,则知道端口未打开。 然后请求管理员打开端口5023。


    转到services.msc并检查sql服务器在哪个帐户下运行。 确保sql server和sql server代理服务应该使用相同的凭据运行。

    在镜像数据库服务器中,您应该执行与步骤1相同的步骤。提供与主体服务器中相同的凭据。 如果该用户不存在,则在具有相同凭据的两台服务器上创建一个新用户。

    现在有主服务器,并在SQL服务器添加新的登录下安全 - >登录。 将服务器角色设置为“系统管理员”和“公共”。 也在镜像服务器上添加相同的用户。

    现在在主体数据库中执行镜像。 你没有得到任何错误。


    以下是您可能想要尝试的几件事情:

    1)确保防火墙不阻止你的SQL端口。 转到具有高级安全性的Windows防火墙 - >入站出站规则 - >新规则 - >端口 - >特定本地端口:设置5022,5023 - >允许连接

    2)检查每个实例上创建的登录是否具有sysadmin角色:在Management Studio中连接到每个实例 - >安全 - >“your_login” - >属性 - >服务器角色 - > sysadmin。 另外,当您配置镜像时,请在“服务帐户”选项卡中将您的帐户凭证放在“主体”和“镜像”框中。

    3)转到SQL Server配置管理器,并确保您的实例和SQL代理运行在同一个帐户下(最好是您的)。 如果启用了TCP IP协议,请检查每个实例的SQL Server网络配置。

    4)在每个实例上尝试删除并重新创建镜像端点。 使用适当的端口号在两个实例上运行以下脚本:

    DROP ENDPOINT  Mirroring
    GO
    
    CREATE ENDPOINT Mirroring
    STATE = STARTED
    AS TCP ( LISTENER_PORT = 5022 )
    FOR DATABASE_MIRRORING 
    (ENCRYPTION = DISABLED,ROLE=ALL)
    GO
    

    希望这个建议之一有所帮助。 祝你好运!

    链接地址: http://www.djcxy.com/p/91285.html

    上一篇: Database Mirroring shows error message in SQL Server

    下一篇: Using Rails 5 (the API flag) and getting no route error despite route declared