公司的数据库规模达到一定数量后,DB迁移、主从切换便是DBA经常性工作之一。但是 DB迁移影响较大,牵涉Team较多,特别是当公司的技术架构不太完善时,一份详细的迁移List很有必要。下面的List是我们DBA进行DB迁移的主要工作汇总,这份List是镜像(Mirror)架构下的工作总结。

 

序号

变更操作

操作内容

操作影响

操作人员

Double检查

预计时间

时间操作时间

状态

一.迁移前准备阶段
1 梳理DB及大小   业务无影响 DBA--XXX DBA--XXX --- -----  Done
2 梳理复制订阅关系   业务无影响  DBA--XXX  DBA--XXX      Done
3 梳理到待迁移DB的Linked Server   业务无影响  DBA--XXX  DBA--XXX      Done
4 梳理本实例上的Linked Server   业务无影响  DBA--XXX  DBA--XXX      Done
5 新SQL Server 实例的部署   业务无影响  DBA--XXX  DBA--XXX     On-going 
6 数据库镜像搭建(或AlwaysOn)   业务无影响  DBA--XXX  DBA--XXX      
7 导出创建账号、权限的脚本   业务无影响  DBA--XXX  DBA--XXX      
8 导出创建Job的脚本   业务无影响  DBA--XXX  DBA--XXX      
                 
                 
二.迁移阶段
1 关闭备份和归档的Job   业务无影响  DBA--XXX  DBA--XXX      
2

修改镜像的运行模式(高性能-->高安全),

无数据丢失,且主从切换,无需重新搭建。

  业务无影响  DBA--XXX  DBA--XXX      
3 关闭程序账号   新的访问不能连接  DBA--XXX  DBA--XXX      
4 删除复制订阅   订阅库数据不再更新  DBA--XXX  DBA--XXX      
5 关闭仍未提交的连接   数据库不能访问  DBA--XXX  DBA--XXX      
6 执行FailOver命令   主从切换  DBA--XXX  DBA--XXX      
7 执行创建账号的SQL(前面导出的语句)   访问账号建立  DBA--XXX  DBA--XXX      
8 修改数据库域名执行   应用程序的访问指向新的DB  DBA--XXX  DBA--XXX      
9 检查、修改Linked Server指向   Linked Server访问  DBA--XXX  DBA--XXX      
10 原DB Server的job 关闭   业务无影响  DBA--XXX  DBA--XXX      
11 新DB Server Job创建   业务无影响  DBA--XXX  DBA--XXX      
12 恢复备份与归档的Job设置   业务无影响  DBA--XXX  DBA--XXX      
13 业务观察与验证   业务无影响  DBA--XXX  DBA--XXX      
14 禁用原DB Server上的账号   业务无影响  DBA--XXX  DBA--XXX      
                 
三.迁移后
1 持续性业务观察与验证   业务无影响  DBA--XXX  DBA--XXX      
2 观察DB 访问、Job执行情况   业务无影响  DBA--XXX  DBA--XXX      
3 DB Server性能的观察   业务无影响  DBA--XXX  DBA--XXX      
4 迁移前后性能比较(优化)报告   业务无影响  DBA--XXX  DBA--XXX      
5  DB Server下线   业务无影响  DBA--XXX  DBA--XXX      
                 
四.风险点
 1

 DB 迁移过程时间较长,期间不可访问,程序应用重试连接

失效,需要逐一重启。

             
                 
                 
五.异常故障及回退方案