您的位置:首页 > 博客中心 > 数据库 >

SQL Server 大数据搬迁之文件组备份还原实战

时间:2022-03-10 17:02

原文:SQL Server 大数据搬迁之文件组备份还原实战

一.本文所涉及的内容(Contents)

  1. 本文所涉及的内容(Contents)
  2. 背景(Contexts)
  3. 解决方案(Solution)
  4. 搬迁步骤(Procedure)
  5. 搬迁脚本(SQL Codes)
  6. 注意事项(Attention)
  7. 疑问(Questions)
  8. 参考文献(References)

二.背景(Contexts)

  有一个数据库大概在700G左右,需要从服务器A搬迁到服务器B,两台服务器网络传输速度可以达到8MB/s,怎么做才能更快的搬迁并且宕机时间最短呢?

  数据库业务逻辑概述:这个数据库只会插入数据,每天大概有300W条数据,不会对数据进行修改,只有一个表比较大,并且这个表是以自增ID作为分区依据列的,文件组会被重用,数据库为简单恢复模式,我定时会对表数据进行交换分区删除数据;

三.解决方案(Solution)

之前我也写过关于搬迁数据库的一些文章:

  1. SQL Server 数据库最小宕机迁移方案,这篇文章是通过完全备份+差异备份的方式迁移数据库的,这种方式比较合适数据库只有20G左右的数据库,宕机时间=差异备份时间+传输差异备份时间+还原差异备份时间,一般来说这个时间都比较短,因为差异备份都不会太大;

  2. SQL Server 数据库迁移偏方,这篇文章是通过作业的方式迁移数据库的,一个事务中转移N条(大约2W条)数据,N值可以通过测试进行调整(需要看网络情况而定),这种方式比较适合数据库比较大,比如几百G的数据库,而且网络环境比较差的情况下,宕机时间≈0(当转移最后一部分数据足够小),缺点就是迁移的时间会比较长;

  3. 那么这篇文章我们再来讲讲其它方式的迁移,在上面提到的背景下,可以通过对分区文件组进行备份的方式迁移数据库,这种方式比较适合大数据库的迁移,宕机时间=最后一个文件组备份时间+传输备份时间+还原最后一个文件组时间,缺点是宕机时间会比较大,但是整体迁移的时间会比较小;下面是逻辑结构图:

gxlsystem.com,布布扣

  解答:从备份和还原的代码可以看出只是把FILEGROUP与bak对应,与ndf文件对应,所以是不需要理会这个文件组中包含了多少个逻辑分区;

八.参考文献(References)

SQL文件组备份和还原

Sql Server 系统表分析(1) - 备份表

如何还原到故障点 (Transact-SQL)

backupset (Transact-SQL)

SQL Server 大数据搬迁之文件组备份还原实战,布布扣,bubuko.com

热门排行

今日推荐

热门手游