设为首页 收藏本站
查看: 460|回复: 0

[经验分享] SQL SERVER 数据库备份的三种策略【转】

[复制链接]

尚未签到

发表于 2016-11-5 03:55:00 | 显示全部楼层 |阅读模式
  1.全量数据备份
备份整个数据库,恢复时恢复所有。优点是简单,缺点是数据量太大,非常耗时
  
  全数据库备份因为容易实施,被许多系统优先采用。在一天或一周中预定的时间进行全数据库备份使你不用动什么脑筋。使用这种类型的备份带来的问题是非常缺乏灵活性,而且当数据库被冲掉后,你面临丢失大量数据的潜在威胁。例如,假设你每天在午夜备份数据库。
  
如果服务器在晚上11点崩溃了,你将丢失前面23个小时对数据所做的全部修改。对大多数系统来说,这是无法接受的。对此规则,为数不多的例外如下:
  
1.系统中所存的数据可以很容易地再创建。这类服务器中一个很好的例子是报表服务器,其中所存的所有数据都由一个批处理过程装载的。如果这个数据库被冲掉了,你只需要再运行一次这个批处理过程,所有数据就可以恢复了。
  
2.不经常修改的数据库。一个例子是被收集存储在数据中心或数据仓库的历史数据。通常,查询这些数据以判断趋势,但是这些数据极少被修改。
  
3.一个遥远的站点,那里很少或没有数据库管理员支持。这种类型的站点常常依靠没受过足够培训的人来维持备份计划,并且他还从事其他工作。通常最好保证实施的备份计划非常简单,不必让那些用户监视和维护它。
  
4.系统中所存数据的重要性很低。一个很好的例子是开发用服务器。在这些类型的服务器上,开发者通常装载一些旧的或假定的数据来测试应用程序。这类数据库每天的备份是可接受的。
  
  Sql语句:
  BACKUP DATABASE [wxh] TO DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\wxh.bak' WITH NOFORMAT, NOINIT, NAME = N'wxh-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
  
  2.增量数据备份(Differential Backups)
所谓增量,就是以某个起始时间点的全量数据为基础,备份该时间点以后的数据。而起始时间点的全量数据,就是通过全量备份而为的。
如果有人告诉你“每周一进行全量备份,每天进行一次增量备份。”,这就意味着,星期一作一次全量配份,形成一个起始时间点的全量数据;星期二备份星期一以来的数据;星期三也备份星期一以来的数据;.......星期天也备份星期一以来的数据。到第二周的星期一时,又执行一次全量配份,再开始新的备份周期。
如果要恢复星期三的数据,则要先恢复星期一的全量数据,然后再恢复在星期一到星期三之间的增量数据。
  增量备份是能用来帮助你实施备份计划的最新技术。这种备份,像事务日志备份一样,只备份你上次全数据库备份后所做的修改。与事务日志备份不一样的是这种备份不允许时间点恢复。它只允许你在实际所做的备份点上恢复。所以,这种备份通常要有事务日志备份作为补充。在下列情况下,增量备份非常有用:
  
1.你想通过联合使用全数据库备份、增量备份和事务日志备份最大程度地减少花费的时间。
  
2.数据库的大小使经常做全数据库备份很困难的情况。
  
3.一个遥远的站点,那里很少或没有数据库管理员支持。这种类型的站点常常依靠没受过足够培训的人来维持备份计划,而且他还经常从事其他工作。通常最好保证实施的备份计划非常简单,不必让那些用户监视和维护它。
  
4.系统中所存数据不是非常重要,所以所做的一些修改丢失后,不会导致灾难性的后果。对于这种类型的系统,手工重建数据比建立一个事务日志备份计划更容易。
  
  Sql语句
  BACKUP DATABASE [wxh] TO DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\wxh.bak' WITH DIFFERENTIAL , NOFORMAT, NOINIT, NAME = N'wxh-Differential Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
  GO
  
  3.日志备份
周一做一次全量数据备份,周二时备份 周一至周二 的日志,周三时配份 周二至周三 的日志......。
若要恢复周三的数据,则先恢复到周一的全量数据,再按 周一至周二的日志、 周二至周三的日志 进行数据库操作
  一个事务日志备份只备份事务日志中的信息。事务日志备份必须与至少一次全数据库备份联用,这是因为如果恢复数据,必须要有一个开始点。事务日志备份比全数据库备份少花费许多资源,经常执行也容易多了。这实际上有两个目的。首先是缩短了最后一次备份与服务器失败之间的时间间隔,因而减少了数据损失。事务日志备份还允许你实施一种特殊类型的恢复,即时间点恢复。这种类型的恢复允许你恢复数据到一个特定的时间点,比如到一次实际失败发生前5分钟时。
  
当某人所做的大量的数据修改或删除要取消时,它显得特别有用。你只需简单地恢复数据库到这次动作发生的时间点前。事务日志恢复在下列情况时非常有用:
  
1.数据库被高频率地修改。在发生大量的数据库修改时,数据库备份可能很快就过时了,如果把事务日志备份和全数据库备份联系起来使用,这些修改你都能记录下来。
  
2.你想采取时间点恢复。像我前面提到的,时间点恢复是非常重要和有用的,你可以通过事务日志备份来实现。
  
3.不能接受丢失大量数据的情况。在这种情况下,你可以每天做一个全数据库备份,再每小时或更频繁地做事务日志备份。这将减少数据丢失量。
  
4.数据库的大小使得经常做全数据库备份很困难。例如,非常大的数据仓库很容易达到上万亿字节。这种情况下,你可以做一次全数据库备份,然后当数据修改时,再做一次事务日志备份。
  
  Sql语句:
  BACKUP LOG [wxh] TO DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\wxh.bak' WITH NOFORMAT, NOINIT, NAME = N'wxh-Transaction Log Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
  GO
  
4.增量数据备份与日志备份相结合

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-295787-1-1.html 上篇帖子: SQL Server 2005发布订阅实现(负载均衡) 下篇帖子: 一个struts+sql server得分页(存储过程版)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表