资源描述:
《sql_server_2008_数据库镜像配置》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、/***********************主机ANNATROV*******************************//*数据库镜像主机:ANNATROV备机:JOHN见证机:KATE以上三台机器均:XPSP3;SQLSERVER2008SP1.备机,见证机均为VM虚拟机,主机为本机由于系统是XP,所以没有做域.因此采用证书认证方式来连接.所以,如果要用于透明数据加密的请注意.MASTER证书可以共用,需要建的是数据库证书.数据库要能够互相访问,不懂的端口的可以把防火墙关掉.由于数据库镜像只对数据库内数据进行同步,因此主库上的(msdb)作业,(master)登陆名需要手工同
2、步,以免造成不必要的麻烦.*//*如果数据库MASTER有加密码了,可以删除.删除证书--SETENCRYPTIONOFFDROPCERTIFICATEHOST_C_cert--删除加密的证书,就是加密码的数据库证书.dropMASTERKEY--删除主密钥,也就是MASTER的dropdatabaseencryptionkey*/--创建证书USEmaster;CREATEMASTERKEYENCRYPTIONBYPASSWORD='OOOooo';CREATECERTIFICATEANNATROVWITHSUBJECT='ANNATROV',START_DATE='2010-07-23
3、';--创建链接端点CREATEENDPOINTEndpoint_MirroringSTATE=STARTEDASTCP(LISTENER_PORT=5022,LISTENER_IP=ALL)FORDATABASE_MIRRORING(AUTHENTICATION=CERTIFICATEANNATROV,ENCRYPTION=REQUIREDALGORITHMAES,ROLE=ALL);--备份证书,并拷贝证书至各机确保互联BACKUPCERTIFICATEANNATROVTOFILE='g:testANNATROV.cer';/*主机,备机,见证机三机都备份完证书以后,然后再将各自的
4、证书拷贝到其他两台机器上,因为下面的添加登陆名创建的账号需要各自的证书来验证.比如主机ANNATROV上,就需要有JOHN,KATE的证书*/--添加登陆名,用户--备机用户--JOHNCREATELOGINJOHNWITHPASSWORD='123456';CREATEUSERJOHNFORLOGINJOHN;CREATECERTIFICATEJOHNAUTHORIZATIONJOHNFROMFILE='g:testJOHN.cer';--证书验证GRANTCONNECTONENDPOINT::Endpoint_MirroringTO[JOHN];--见证机用户--KATECREAT
5、ELOGINKATEWITHPASSWORD='123456';CREATEUSERKATEFORLOGINKATE;CREATECERTIFICATEKATEAUTHORIZATIONKATEFROMFILE='g:testKATE.cer';--证书验证GRANTCONNECTONENDPOINT::Endpoint_MirroringTO[KATE];/*--手工同步登陆名,密码--镜像的缺点就是不能同步数据库用户名和作业,因为需要手工同这两项.--在主机上找出合建名USEmaster;selectsid,namefromsyslogins;--在备机上创建登陆名USEmaste
6、r;execsp_addlogin@loginame='Data_Syn',@passwd='123,./',@sid=0x9FD492E8D353394AA8893CE7B0EC1E08;*/--等各主机都执行以上步骤再可以执行以下语句.--建立镜像ALTERDATABASEPpPSETPARTNER='TCP://john:5022'--先在备机执行然后再这个ALTERDATABASEPpPSETWITNESS='TCP://kate:5022'--见证机上不需要执行/**************************备机JOHN***************************
7、//*如果数据库MASTER有加密码了,可以删除.删除证书--SETENCRYPTIONOFFDROPCERTIFICATEHOST_C_cert--删除加密的证书,就是加密码的数据库证书.dropMASTERKEY--删除主密钥,也就是MASTER的dropdatabaseencryptionkey*/--创建证书USEmaster;CREATEMASTERKEYENCRYPTIONBYPASSWORD='OOOooo