同一台服务器不同的的实例还是同一实例的不同数据库?前者需要使用DTC,后者不需要使用DTC,直接插入就可以了,可以再插入前指定具体数据库名字或者直接将数据库名+schema名字加到表前面,并赋予相应权限就可以了。
使用DTC时需要建EndPoint。参考如下:
DBCCTRACEON(1400,-1)
GO
dropmasterkey
createmasterkeyencryptionbypassword='123';
GO
dropcertificateHOST_W_cert
createcertificateHOST_W_certwithsubject='HOST_Wcertificate',start_date='2010/07/23',expiry_date='2020/11/01';
GO
Createendpointendpoint_mirroringstate=started
astcp(listener_port=7025,listener_ip=all)
fordatabase_mirroring(authentication=certificateHOST_W_cert,encryption=disabled,role=witness);
GO
DROPENDPOINTendpoint_mirroring
BackupcertificateHOST_W_certtofile='E:\HOST_W_cert.cer';
droploginHOST_A_login
createloginHOST_A_loginwithPASSWORD='123';
GO
dropuserHOST_A_user
createuserHOST_A_userfromloginHOST_A_login;
GO
dropcertificateHOST_A_cert
CreatecertificateHOST_A_cert
AuthorizationHOST_A_user
Fromfile='E:\HOST_A_cert.cer';
GO
GrantCONNECTONEndpoint::Endpoint_mirroringto[HOST_A_login];
GO
-------
droploginHOST_B_login
createloginHOST_B_loginwithPASSWORD='123';
GO
dropuserHOST_B_user
createuserHOST_B_userfromloginHOST_B_login;
GO
dropcertificateHOST_B_cert
CreatecertificateHOST_B_cert
AuthorizationHOST_B_user
Fromfile='E:\HOST_B_cert.cer';
GO
GrantCONNECTONEndpoint::endpoint_mirroringto[HOST_B_login];
GO
select@@version
|