sqlserver数据中心迁移解决方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver数据中心迁移解决方案相关的知识,希望对你有一定的参考价值。

 

公司日前决定将位于异地的数据中心迁回本地,已有架构是sqlserver2012的alwayson集群

可选方案有

1.异地添加新节点,利用alwayson日志分发数据传送同步数据。优点:高可用方案,数据不会出现差异,能平滑切换,无需停机。缺点:具体操作复杂,数据库较大,同步耗时较多,且会占用较大带宽,影响正常业务

2.机房完全备份后直接快递硬盘,网络传输差异备份及事务日志备份。优点:主要数据备份人工带回,节省数据传输时间。缺点:需要停机时间,用以同步数据,停机时间需要看日志备份回拖及恢复的时间

 

目前需求比较急,要求在不影响业务的情况下进行,所以目前采用2方案

方案2的具体实现是完全备份+差异备份+事务日志备份,其中差异备份会在确认切换前1天到两天进行差异备份,备份后通过ftp拖回,在差异备份后每隔1小时或者4小时进行事务日志备份,同时不断还原数据库

 如果存在多次完全备份,多次差异备份,和多次事务日志备份,在全部添加备份文件后,系统选择是最新的完全备份+此次完全备份后的第一个差异备份+第一个差异备份后的所有事务日志备份

完全备份历史

 技术分享

差异备份历史

技术分享

 

日志备份历史

技术分享

 

 删除了201710261430之前的备份文件

技术分享

如果默认全部添加到恢复计划中,sqlserver自主选择恢复计划及文件

技术分享

这样做的好处在于,操作者不必担心数据丢失,坏处在于事务日志备份比差异备份大很多,会影响恢复速度,同时由于事务日志也是由网络传输过来的,也会占用带宽和传输时间

操作步骤:
1.对[dbo].[Game_one]进行多批次,写入及删除修改操作,每个批次操作间进行事务日志备份,多次事务日志间至少进行两次差异备份
2.统计最后一次事务日志备份前的数据变更,统计目录有删除特定数据,新增特定数据,数据总量,数据总值,用以进行完整性验证

之后使用系统默认恢复方案恢复一次数据库,并比数据是否完整

然后选用最近的完整备份+最近的差异备份+最近差异备份后的所有日志备份恢复

向上面的例子,只需要1个全备,1个差备,2个事务日志备份即可

技术分享

这样实际上的操作方案就可以根据网络带宽传输速率和每日事务日志增量判断何时进行差异备份,以及事务日志备份时间间隔了

具体操作就变成切换前1天或者两天,进行差异备份,之后每隔6小时进行事务日志备份,切换当天,每隔1小时进行事务日志备份

具体操作频度视文件大小和传输速度而定



以上是关于sqlserver数据中心迁移解决方案的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 到 SQL Server 的迁移

闲来无事,编写一个数据迁移小工具

(原)将Oracle迁移到SQLServer

对于 Visual Studio 2012 中的 SQL Server 数据库项目,“需要迁移”是啥意思

包管理器看不到 sql server,也不会创建迁移。解决办法是啥?

从Oracle迁移到MySQL的各种坑及自救方案