码迷,mamicode.com
首页 > 其他好文 > 详细

Mirror–使用证书配置镜像模板

时间:2014-07-23 16:10:11      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:blog   http   使用   os   数据   io   

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

–=================================================================

开始配置

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

bubuko.com,布布扣
--=========================================================================================================
--创建Master key
--在主服务器和镜像服务器上运行
USE master;
GO
IF NOT EXISTS(SELECT 1 FROM sys.symmetric_keys k WHERE k.Name=‘##MS_DatabaseMasterKey##‘)
BEGIN
CREATE MASTER KEY ENCRYPTION BY PASSWORD =‘master@key123‘
END
GO
IF NOT EXISTS(SELECT 1 FROM sys.databases db WHERE db.[is_master_key_encrypted_by_server]=1)
BEGIN
ALTER MASTER KEY ADD ENCRYPTION BY SERVICE MASTER KEY
END
GO
bubuko.com,布布扣

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

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

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

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

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

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

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

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

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

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

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

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

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

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 COMPRESSION
BACKUP LOG DemoDB TO DISK=‘DemoDB_Log.BAK‘ WITH COMPRESSION

 

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

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

 

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

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

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

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

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

------------------------------------------------------------------
--在主服务器上运行
USE [master]
GO
ALTER DATABASE DemoDB SET PARTNER SAFETY OFF
GO

 

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

–===================================================================

摘自博客园:http://www.cnblogs.com/TeyGao/p/3521666.html

Mirror–使用证书配置镜像模板,布布扣,bubuko.com

Mirror–使用证书配置镜像模板

标签:blog   http   使用   os   数据   io   

原文地址:http://www.cnblogs.com/aaronguo/p/3863184.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!