windows server2012+SQLserver2012 用证书在非域环境下搭建镜像

编程入门 行业动态 更新时间:2024-10-09 17:21:51

windows server2012+SQLserver2012 用证书在非域环境下搭建<a href=https://www.elefans.com/category/jswz/34/1770431.html style=镜像"/>

windows server2012+SQLserver2012 用证书在非域环境下搭建镜像

百度上搜了很多资料和各位在非域环境下搭建sqlserver镜像的各种步骤上踩了各种坑,最后自己参考总结出来的感觉比较完善的步骤。(也感谢各位在非域环境下用证书搭建sqlserver镜像的资料)

(环境:windows server2012+sqlserver2012)
两台机子(条件有限没做见证服务器)(网段可以不同)
192.168.1.20 计算机名:wddd(主)
192.168.1.10 计算机名:wsss(从)
(数据库的模式都要选择完整模式)

(0)在主从机子上的C:\Windows\System32\drivers\etc下有个hosts文件在最底下添加如下:
192.168.1.20 wddd
192.168.1.10 wsss

(1)先在主计算机和从计算机上新建一个一模一样账号密码的用户,并加入管理员组,最后进入计算机管理把SQL Server(MSSQLSERVER)服务的登录账户都改成这个用户.

(2)再进入C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn修改XPStar.DLL文件,在属性-安全-编辑-添加-高级-立即查找处添加MSSQLSERVER用户再赋予完全控制权限.

(3)然后在主从计算机上的防火墙上打开5022和1433端口。

最后在数据库上执行的操作:
在主库上的新建查询处执行:
(4)USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = ‘自己想要的密码’; --创建秘钥对
CREATE CERTIFICATE A_cert WITH SUBJECT = ‘A certificate’ , START_DATE = ‘1/1/2019’,EXPIRY_DATE = ‘10/31/2099’; --创建证书
CREATE ENDPOINT Endpoint_XX STATE = STARTED AS TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION = CERTIFICATE A_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); --创建端口
BACKUP CERTIFICATE A_cert TO FILE = ‘D:\jiami\A_cert.cer’; --备份证书

在从库上执行:
(5)USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = ‘自己想要的密码’; --创建秘钥对
CREATE CERTIFICATE B_cert WITH SUBJECT = ‘B certificate’, START_DATE = ‘1/1/2019’,EXPIRY_DATE = ‘10/31/2099’; --创建证书
CREATE ENDPOINT Endpoint_XX STATE = STARTED AS TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION = CERTIFICATE B_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); --创建端口
BACKUP CERTIFICATE B_cert TO FILE = ‘D:\jiami\B_cert.cer’; --备份证书

(6)主库上的证书复制到从库的’D:\jiami’下
(7)从库上的证书复制到主库的’D:\jiami’下

在主库上执行:
(8)CREATE LOGIN B_login WITH PASSWORD = ‘自己想要的密码’; --创建登录用户密码
CREATE USER B_user FOR LOGIN B_login; --创建用户进登录用户组
CREATE CERTIFICATE B_cert AUTHORIZATION B_user FROM FILE = ‘D:\jiami\B_cert.cer’; --用户绑定证书
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [B_login]; --赋予登录用户进出端口的权限

在从库上执行:
(9)CREATE LOGIN A_login WITH PASSWORD = ‘自己想要的密码’; --创建登录用户
CREATE USER A_user FOR LOGIN HOST_A_login; --创建用户进登录用户组
CREATE CERTIFICATE A_cert AUTHORIZATION A_user FROM FILE = ‘D:\jiami\A_cert.cer’; --用户绑定证书
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [A_login]; ----赋予登录用户进出端口的权限

(10)再在主库上备份自己要同步的数据库2次,一次完整备份,一次事务备份.再把2份备份文件复制到从库到随便一个文件夹下,
然后在从库上右键点击自己创建的新库(跟主库自己要备份的库名字相同),选择任务-还原数据库,在源选设备,然后选择自己拷贝过来的完整备份的文件,目标就是自己创建的新库,再点击选项,勾上覆盖现有数据库,恢复状态选RESTORE WITH NORECOVERY,结尾日志备份默认勾了,要取消掉,点确定.
之后再还原事务日志,从文件或磁带中选择自己拷贝过来的事务日志的文件,在选项中的恢复状态选不对数据库执行任何操作,不回滚未提交的…(RESTORE WITH NORECOVERY).点确定。

在从库上执行:
(11)ALTER DATABASE 自己要同步的数据库 SET PARTNER = ‘TCP://192.168.1.20(主库的ip):5022’;

之后在主库上执行:
(12)ALTER DATABASE 自己要同步的数据库 SET PARTNER = ‘TCP://192.168.1.10(从库的ip):5022’;

之后自己想同步其他库就再执行(10)(11)(12)的操作就行了

更多推荐

windows server2012+SQLserver2012 用证书在非域环境下搭建镜像

本文发布于:2024-03-14 12:35:27,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1736483.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:镜像   证书   环境   windows

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!