MSSQL 从 2005 开始推出镜像功能.
SQL Server镜像是不可读的.整个库在个 norecovery模式.
SQL Server镜像只能是1对1 但可以用镜像+logshipping 混合实现一对多和镜像链.
SQL Server镜像认证分为 证书 和windows验证.windows验证必须在一个域里面实现.
并不是每个公司的生产环境都是一个域.域的好处是可以做故障转移群集+镜像混合实现保障.
下面就说下认证方式的镜像
环境:win2008 +mssql2008
1 在主库上面创建数据库主密钥
create master key encryption by password ; 2 创建证书
create certificate host_105with subject='host_105_c' 3创建端点
create endpoint endport_mirrorstate=started as tcp(listener_port=1522, listener_ip=all)for database_mirroring(authentication=certificate host_105, encryption=required algorithm AES, role=all ); 4 备份证书并把证书复制到镜像服务器上
backup certificate host_105 to file='c:\host_105.cer'; 5 在备份机上面重复1-4步骤 (证书名不一样 把 所有带 host_105替换成host_106)
6 在主机上创建sql验证账户并和证书绑定
create login mirror_b with user mirror_b for login mirror_bcreate certificate host_106authorization mirror_bfrom file='c:\host_106.cer'grant connect on endpoint:: endport_mirror to mirror_b 7 在镜像机上创建sql验证账户并和证书绑定
create login mirror_a with password;='xwj1234!@#$' create user mirror_a for login mirror_a; grant connect on endpoint:: endport_mirror to mirror_a; create certificate host_105authorization mirror_afrom file='c:\host_105.cer'; 8 在主库新建mirror_test数据库 日志模式设置为完全模式 并在镜像库上面还原,还原模式为 norecovery
9 同步镜像
--- 在镜像服务器上运行alter database mirror_test set partner='TCP://192.168.1.105:1522' ---在主机上面运行alter database mirror_test set partner='TCP://192.168.1.106:1522' ---设置为高性能模式alter database mirror_testset safety off 10 测试
--在主机执行 create table test(id int); insert into test select 1; --在镜像库上执行 create database mirror_test_snp on primary (name='mirror_test',filename='c:\mirror_test.mdf') as snapshot of mirror_test; use mirror_testselect * from test 11 打开镜像监控器
11 mirror+logshipping
本文转自 ☆★ 包罗万象网 ★☆ - 转载请注明出处,侵权必究!
原文链接:
阅读(1585) | 评论(0) | 转发(0) |