2024年4月16日发(作者:)
我们做web应用的MySQL接触的比较多,大家都知道MySQL的备份或者负载均衡我们会采用
主从复制技术。最近工作中接触到了SQL Server,老板要求也搭起类似的环境。从而我做了以
下研究:
一般情况下,SQL Server不叫主从复制,MS喜欢叫它日志传送功能。其实质是由两台服务器
的代理作业完成的,首先基于源库服务器的备份机制,然后将事务日志定期传送到目的服务器,
从库服务器接收并完成数据库还原操作
名词解释:
源库服务器——主库服务器
目标服务器——从库服务器
传送/接收——主从服务器之间的数据传输【通过磁盘共享】
还原——执行日志文件
实现机制
1.登入账号
由SQL Server 2000 DTS封装,将主登入账号转移到从服务器,且执行各服务器间登入帐号SID
之解析动作,由Agent完成
2.日志传送
主从服务器的数据同步,主要依赖于数据库事务日志传送功能。简单的说就是:
备份作业 —> 复制作业 —> 还原作业 —> 警报作业
我们可以通过在数据创建维护计划中勾选“将事务日志传送到其它的SQL Server(日志传送)”
选项。
那么,主服务器SQL Server代理会生成两个作业:
1).完整备份作业
2).事务日志备份作业
从服务器SQL Server代理会生成五个作业:
1).事务日志备份作业
2).日志传送复制作业
3).日志还原作业
4).日志备份警报作业
5).日志恢复警报作业
3.角色变更
通过SQL Server MSDB预置存储过程sp_change_primary_role对主服务器降级
通过SQL Server MSDB预置存储过程sp_change_secondary_role对从服务器升级
通过SQL Server MSDB预置存储过程sp_change_monitor_role通知监控服务器角色变更
4.角色互换
通过一系列SQL Server MSDB预置存储过程清除之前日志传送信息
在新主服务器和从服务器之间创建新的日志传送维护计划,参考“日志传送
实施步骤
a.准备工作,创建配置存储目录
完整备份目录,事务日志备份目录,预留从日志复制目录
需要设置属性为共享,权限为完全控制
b.创建数据库维护计划
在创建数据库备份计划中“将事务日志传送到其它的SQL Server(日志传送)”,只有选中此项
才会启动日志传送作业
按照提示下一步,根据上面的存储配置选择对应的目录和网络路径,网络路径主要用来提供日志
复制使用
c.配置完整备份周期和同步周期
d.配置数据清理周期
e.手动查看下主从服务器的SQL Server代理是否正常启动,作业是否创建成功
2.角色变更
a.主服务器建立登入账号SQL Server 2000 DTS(package)封装,通过主服务器SQL Server代
理工作
b.降级主服务器(demote),使用_change_primary_role预存储过程,将主服务
器从读/写模式转换为读备援模式,准备随时接受交易日志的备份资料
发布评论