博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mirror--使用证书配置镜像模板
阅读量:7250 次
发布时间:2019-06-29

本文共 4915 字,大约阅读时间需要 16 分钟。

--==================================================================

--该文档主要用于内部配置模板
--场景:
--主服务器:192.168.3.32
--镜像服务器:192.168.3.33
--镜像数据库:DemoDB
--=================================================================

开始配置

1. 在主服务器和镜像服务器上创建Master Key

--=========================================================================================================--创建Master key--在主服务器和镜像服务器上运行USE master;GOIF NOT EXISTS(SELECT 1 FROM sys.symmetric_keys k WHERE k.Name='##MS_DatabaseMasterKey##')BEGINCREATE MASTER KEY ENCRYPTION BY PASSWORD ='master@key123'ENDGOIF NOT EXISTS(SELECT 1 FROM sys.databases db WHERE db.[is_master_key_encrypted_by_server]=1)BEGINALTER MASTER KEY ADD ENCRYPTION BY SERVICE MASTER KEYENDGO

2. 在主服务器上创建证书并备份

--=========================================================================================================--创建和备份证书--在主服务器上运行IF NOT EXISTS (SELECT 1 FROM sys.certificates C WHERE C.Name='HOST_3_32_cert' )BEGINCREATE CERTIFICATE HOST_3_32_cert WITH SUBJECT ='HOST_3_32_cert',START_DATE = '01/01/2010' , EXPIRY_DATE = '01/01/2199';ENDGOBACKUP CERTIFICATE HOST_3_32_cert TO FILE='D:\HOST_3_32_cert.cer'GO

3. 在镜像服务器上创建证书并备份

--=========================================================================================================--创建和备份证书--在镜像服务器上运行IF NOT EXISTS (SELECT 1 FROM sys.certificates C WHERE C.Name='HOST_3_33_cert' )BEGINCREATE CERTIFICATE HOST_3_33_cert WITH SUBJECT ='HOST_3_33_cert',START_DATE = '01/01/2010' , EXPIRY_DATE = '01/01/2199';ENDGOBACKUP CERTIFICATE HOST_3_33_cert TO FILE='D:\HOST_3_33_cert.cer'GO

4. 在主服务器上创建镜像端点

--=========================================================================================================--创建镜像专用的端点,并使用证书加密--同一个实例上只能存在一个镜像端点--在主服务器上运行IF NOT EXISTS(SELECT * FROM sys.endpoints e WHERE e.[Type]=4)BEGINCREATE ENDPOINT [Endpoint_Mirroring]STATE=STARTED ASTCP(LISTENER_PORT=5022)FOR DATABASE_MIRRORING(AUTHENTICATION=CERTIFICATE HOST_3_32_cert, ENCRYPTION=REQUIRED,ROLE=ALL)ENDGO

5. 在镜像服务器上创建镜像端点

--=========================================================================================================--创建镜像专用的端点,并使用证书加密--同一个实例上只能存在一个镜像端点--在主服务器上运行IF NOT EXISTS(SELECT * FROM sys.endpoints e WHERE e.[Type]=4)BEGINCREATE ENDPOINT [Endpoint_Mirroring]STATE=STARTED ASTCP(LISTENER_PORT=5022)FOR DATABASE_MIRRORING(AUTHENTICATION=CERTIFICATE HOST_3_33_cert, ENCRYPTION=REQUIRED,ROLE=ALL)ENDGO

6. 将主服务器和镜像服务器上备份的证书相互复制到对方服务器上

7. 在主服务器上创建登陆和用户以及证书,并授予连接镜像端点的权限

-----------------------------------------------------------------------在主服务器上创建登陆和用户以及证书,并授予连接镜像端点的权限--在主服务器上运行USE master;GOIF NOT EXISTS(SELECT 1 FROM sys.syslogins l WHERE l.[Name] ='HOST_3_33_login')BEGINCREATE LOGIN HOST_3_33_login WITH PASSWORD ='Auto@sql'ENDGOIF NOT EXISTS(SELECT 1 FROM sys.sysusers u WHERE u.[Name]= 'HOST_3_33_User')BEGINCREATE USER HOST_3_33_User FOR LOGIN HOST_3_33_loginENDGOIF NOT EXISTS(SELECT 1 FROM sys.certificates c WHERE c.[Name]= 'HOST_3_33_cert')BEGINCREATE CERTIFICATE HOST_3_33_cert AUTHORIZATION HOST_3_33_User FROM FILE='D:\HOST_3_33_cert.cer'ENDGOGRANT CONNECT ON ENDPOINT::[Endpoint_Mirroring] TO HOST_3_33_loginGO

8. 在镜像服务器上创建登陆和用户以及证书,并授予连接镜像端点的权限

-----------------------------------------------------------------------在镜像服务器上创建登陆和用户以及证书,并授予连接镜像端点的权限--在镜像服务器上运行USE master;GOIF NOT EXISTS(SELECT 1 FROM sys.syslogins l WHERE l.[Name] ='HOST_3_33_login')BEGINCREATE LOGIN HOST_3_33_login WITH PASSWORD ='Auto@sql'ENDGOIF NOT EXISTS(SELECT 1 FROM sys.sysusers u WHERE u.[Name]= 'HOST_3_33_User')BEGINCREATE USER HOST_3_33_User FOR LOGIN HOST_3_33_loginENDGOIF NOT EXISTS(SELECT 1 FROM sys.certificates c WHERE c.[Name]= 'HOST_3_33_cert')BEGINCREATE CERTIFICATE HOST_3_33_cert AUTHORIZATION HOST_3_33_User FROM FILE='D:\HOST_3_33_cert.cer'ENDGOGRANT CONNECT ON ENDPOINT::[Endpoint_Mirroring] TO HOST_3_33_loginGO

9. 在主服务器和镜像服务器上配置防火墙,开放5022端口

10. 在镜像服务器上使用Telent来检查端口情况

telnet 192.168.3.33 5022

11. 在主服务器上使用Telent来检查端口情况

telnet 192.168.3.32 5022

12. 在主服务器上备份数据库和日志

--数据库完整备份和日志备份BACKUP DATABASE DemoDB TO DISK='DemoDB_FULL.BAK' WITH COMPRESSIONBACKUP LOG DemoDB TO DISK='DemoDB_Log.BAK' WITH COMPRESSION

 

13. 将主服务器上的备份复制到镜像服务器上,使用WITH NORECOVERY选项还原数据库备份和日志备份\

--使用数据库完整备份和日志备份还原--注意修改还原目录RESTORE DATABASE DemoDB FROM DISK='DemoDB_FULL.BAK' WITH NORECOVERYRESTORE LOG DemoDB FROM DISK='DemoDB_Log.BAK' WITH NORECOVERY

 

14. 在镜像服务器上配置伙伴

--------------------------------------------------------------------从服务器设置镜像USE [master]GOALTER DATABASE DemoDB SET PARTNER='TCP://192.168.3.32:5022'GO

15. 在主服务器上配置伙伴

--------------------------------------------------------------------主服务器设置镜像--如果提示日志不足,请继续备份还原日志USE [master]GOALTER DATABASE DemoDB SET PARTNER='TCP://192.168.3.33:5022'GO

16. 如果希望日志运行在异步模式下,修改同步模式

--------------------------------------------------------------------在主服务器上运行USE [master]GOALTER DATABASE DemoDB SET PARTNER SAFETY OFFGO

 

配置结束后,可以使用镜像监视器来查看

--===================================================================

惯例妹子镇邪

转载地址:http://naqbm.baihongyu.com/

你可能感兴趣的文章
一些经典面试题分析(上)
查看>>
[JS相关的记录01] 那什么来面对你,面向对象编程(__proto__,prototype,constructor以及原型链)...
查看>>
夏日葵电商:搭建一个商城系统,N+功能方案揭秘!
查看>>
Akka系列(一):Akka简介与Actor模型
查看>>
yii2获得从数据库获得数据的方法并处理
查看>>
Android开发百度地图(一)之初体验
查看>>
微服务指南走北(四):你不愿意做微服务架构的十个理由
查看>>
CSS代码重构与优化之路
查看>>
使用 sigprocmask 和 sigpending 在程序正文中捕获和处理信号
查看>>
Bodymovin插件的使用
查看>>
详细深入分析 Java ClassLoader 工作机制
查看>>
关于设计模式
查看>>
对一个“老”架构的重新思考
查看>>
DoubanFMPlayer, A mimic of Douban.fm player
查看>>
埃森哲、亚马逊和万事达卡抱团推出的区块链项目有何神通?
查看>>
2019年自动驾驶5大趋势预测:第一台Level 5 无人车问世
查看>>
后APP时代的破局之路 :阿里技术“三大容器五大方案”亮相,百川开放全面升级...
查看>>
工欲善其事-必先利其器之终端
查看>>
64位的Mac OS X也有Windows.Forms了
查看>>
立下“去O”Flag的AWS,悄悄修炼了哪些内功?
查看>>