[ 登录 ][ 注册 ] 天极传媒: 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
您现在的位置: IT专家网 > 数据库子站 > 数据库技巧

备份与恢复备份妙技

作者: 地宝,  出处:微软BI开拓者, 责任编辑: 李书琴, 
2007-10-17 17:10
  本文中作者指出了在备份与恢复备份过程中的常犯的错误,并给出了详细解析……

  我见过很多的朋友,在作备份时直接就是

  backup database dbname to disk='e:\db.bak'

  恢复备份

  restore database dbname from disk='e:\db.bck'

  with move 'dbname' to 'c:\dbname.mdf',

  move 'dbname_log' to 'c:\dbname_log.ldf'

  看似做了备份,但却存在隐患,这个隐患的根本在于你对备份太过信赖,你认为只要做了备份就万事大吉了。实际不然,以上两条语句并没有对你的数据库作验证。其结果是,数据库已经存在问题了,你将已有问题的数据备份,由于没有验证,因此,在备份时不会出现任何的错误提示,当你需要恢复备份时,亦没对此备份作验证,恢复备份时亦没有错误提示,后果大家可想而知。本人就曾经吃过这亏!

  在MSSQL 2005,已经有了一个验证的参数,使用很简单:

  backup database dbname to disk='e:\db.bak' with checksum

  加上一个checksum就可以解决问题,很方便,就是个习惯问题。

  同样在恢复时,你也不要着急,先用

  restore verifyonly from disk='e:\db.bak' with checksum

  检验一下再说。

  补充:

  当然,with checksum 仅仅是对MSSQL2005有效的,这是MSSQL2005的

  一个改进吧,若是MSSQL2000怎么办呢,你可以在备份前是先运行一下

  dbcc checkdb 看看数据是否完整可靠。

  • 本文关键词:

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。

邮件订阅