当前位置 : 主页 > 网页制作 > html >

[MSSQL]利用 本机账号(No Domain Name 环境) 设定 SQL Server 镜像(Database Mirroring)

来源:互联网 收集:自由互联 发布时间:2021-06-12
摘要:?SQL Server?database mirroring with?local user account(no domain name). 使用说明 : 本章将介绍如何在利用"本机账号"(或是在没有Domain Name 环境)来设定 SQL Server 镜像 (注:设定 SQL Server 镜像主要有三

摘要:?SQL Server?database mirroring with?local user account(no domain name).


使用说明:

本章将介绍如何在利用"本机账号"(或是在没有Domain Name 环境)来设定 SQL Server 镜像
(注:设定 SQL Server 镜像主要有三种方式:
1. 在有 Domain Name?环境可以透网域账号来设定
2.?在没有 Domain Name 环境可以每台电脑的本机账号来设定
3. 透过凭证的方式进行)

?

环境说明:

第一台
角色作用:?Principal Server
电脑名称: PC1
数据库名称: TestDB
本机账号: PC1admin1
数据库: SQL Server 2014?Developer Edition
操作系统: Windows 7 Service Pack 1
第二台
角色作用:?Mirroring Server
电脑名称: PC2
本机账号: PC2admin1
数据库: SQL Server 2014?Developer Edition
操作系统: Windows 7 Service Pack 1
(注: Principal 和?Mirroring 要使用相同的 SQL Server 版本)
第三台
角色作用:?Witness Server
电脑名称: PC3
本机账号: PC3admin1
数据库: SQL Server 2014?Express?Edition
操作系统: Windows 7 Service Pack 1

如果有防火墙请记得开启 SQL Server TCP Port(默认:1433) 和 镜像端点 Port(默认:5022)

?

设定教学说明:

将对 PC1 的 数据库 TestDB 设定镜像。

Step 1-1.

将 PC1、PC2 的 " SQL Server 服务"和 "SQL Server Agent 服务" 的登入身份 都改为的本机账号 admin1,如下图:分享图片

分享图片

分享图片

分享图片

?

Step 1-2.

PC3 的 " SQL Server 服务" 的登入身份 改为的本机账号 admin1,如下图:分享图片

Step 2.

将 PC1 的数据库TestDB做 完整备份事务纪录备份?后,在 PC2 做备份还原动作
PC2 做还原 "完整备份" 时,请记住要到还原的"选项"页面,选择 RESTORE WITH NORECOVERY 做还原的项目,如下图:分享图片

PC2 做 "事务纪录"?还原时,请也记住要到还原的"选项"页面,选择 RESTORE WITH NORECOVERY 做还原的项目,如下图:分享图片

如果成功做完还原动作,PC2 的 "TestBD"数据库状态会是"正在还原…",如下图:分享图片

Step 3.

对 PC1、PC2、PC3 加入登入身份,分别是自己的本机账号 admin1(如:PC1要加入?PC1admin1,PC2要加入?PC2admin1,PC3要加入?PC3admin1),
如果SQL Server 已经有加入自己的本机账号 admin1,Step 3.就可以忽略不用重复做了,如下图:分享图片

分享图片

Step 4.

在 PC1 做镜像设定动作,如下图(step by step):分享图片

分享图片

分享图片

分享图片

分享图片

分享图片
分享图片

分享图片

由于在?No Domain Name 环境下,所以下图的服务账户无作用,因此皆留空白(在后面会透过手动方式对"端点"加入本机账号 admin1连入的权限)分享图片

分享图片

按下"完成"按钮,即会跳到下图,这时候按下"不要启动镜像"按钮(因为后面步骤我们要手动对"端点"加入 本机账号admin1 连入的权限,所以等加入账号连入权限后再来操作此画面)分享图片

按下"不要启动镜像"按钮,即会跳到下图,这时候先不要按下任何按钮,先保留此画面(后面Step 6?会用到)分享图片

Step 5.

我们要手动对 "Mirror"端点?加入 本机账号admin1 可以连入的权限,
因此对 PC1 执行下面的 SQL命令

USE [master]
GRANT CONNECT ON ENDPOINT::[Mirror] TO [PC1admin1]


对 PC2 执行下面的 SQL命令

USE [master]
GRANT CONNECT ON ENDPOINT::[Mirror] TO [PC2admin1]


对 PC3 执行下面的 SQL命令

USE [master]
GRANT CONNECT ON ENDPOINT::[Mirror] TO [PC3admin1]

如下图:分享图片

分享图片

分享图片

Step 6.

就下来准备启动镜像,这时候我先回到 Step4 最后所停留的画面,如下图,按下 "启动镜像" 按钮分享图片

如果出现提示 "缺少完整域名(FQDN)" 时,请下按""按钮
分享图片

启动成功后,PC1 的 TestDB 数据库状态为"主体,已同步处理",PC2 的 TestDB 数据库状态为"镜像,已同步处理/正在还原...",如下图
分享图片

分享图片

分享图片

注:如果发生 1418 错误时,请重新检查 Step1 或 Step5 有没有遗漏做的动作,或是 Port?1433、5022 被防火墙挡住。

主要参考:

SQL Server - 如何建立 Database Mirroring
[Windows][SQL]架设 DB Mirroring 的环境在 Windows 2012 ( 1/2 )
[Windows][SQL]架设 DB Mirroring 的环境在 Windows 2012 ( 2/2 )
[SQL]在 Workgroup 环境下设定 SQL Server 数据库镜像 ( Database Mirroring )
SQL Server 2008R2 Mirroring with No Domain (SQL 镜像)
mirror:error-1418

※在此感谢所有的帮助者,感谢~

原文:大专栏  [MSSQL]利用 本机账号(No Domain Name 环境) 设定 SQL Server 镜像(Database Mirroring)

网友评论