SQL Server数据库实用技术(100)
时间:2007-11-09 来源:不详 作者:迈克DB
注意:如果对数据一致性要求较高(将数据库恢复到发生损坏的刻),则不应使用数据库备份。
2 事务日志备份(Transaction Log Backup)
事务日志备份是指对数据库发生的事务进行备份,包括从上次进行事务日志备份、差异备份和数据库完全备份之后,所有已经完成的事务。在以下情况下我们常选择事务日志备份。
- 不允许在最近一次数据库备份之后发生数据丢失或损坏现象;
- 存储备份文件的磁盘空间很小或者留给进行备份操作的时间有限,例如兆字节级的数据库需要很大的磁盘空间和备份时间;
- 准备把数据库恢复到发生失败的前一点;
- 数据库变化较为频繁。
但是,创建事务日志备份却相对比较复杂。因为在使用事务日志对数据库进行恢复操作时,还必须有一个完整的数据库备份,而且事务日志备份恢复时必须要按一定的顺序进行。比如在上周末对数据库进行了完整的数据库备份,在从周一到本周末的每一天都进行一次事务日志备份,那么若要打算对数据库进行恢复,则首先恢复数据库备份,然后按照顺序恢复从周一到本周末的事务日志备份。 内容来自dedecms
有些时侯数据库事务日志会被中断,例如数据库中执行了非日志操作(如创建索引、创建或删除数据库文件、自动或手工缩小数据库文件大小),此时应该立即创建数据库或差异备份,然后再进行事务日志备份。以前进行的事务日志备份也没有必要了。
3 差异备份(Differential Database Backups)
差异备份是指将最近一次数据库备份以来发生的数据变化备份起,来因此差异备份实际上是一种增量数据库备份。与完整数据库备份相比,差异备份由于备份的数据量较小,所以备份和恢复所用的时间较短。通过增加差异备份的备份次数,可以降低丢失数据的风险,将数据库恢复至进行最后一次差异备份的时刻,但是它无法像事务日志备份那样提供到失败点的无数据损失备份。
但在实际中为了最大限度地减少数据库恢复时间以及降低数据损失数量,我们常一起使用数据库备份、事务日志备份和差异备份,而采用的备份方案是这样的;
- 首先有规律地进行数据库备份,比如每晚进行备份;
- 其次以较小的时间间隔进行差异备份,比如三个小时或四个小时;
- 最后在相临的两次差异备份之间进行事务日志备份,可以每二十或三十分钟一次。
这样在进行恢复时,我们可先恢复最近一次的数据库备份,接着进行差异备份,最后进行事务日志备份的恢复。 内容来自dedecms
但是,在更多的情况下我们希望数据库能恢复到数据库失败那一时刻,那么我们该怎样做呢?下面的方法也许会有大帮助。 - 首先如果能够访问数据库事务日志文件则应备份当前正处于活动状态的事务日志;
- 其次恢复最近一次数据库备份;
- 接着恢复最近一次差异备份;
- 最后按顺序恢复自差异备份以来进行的事务日志备份。
4 文件和文件组备份(File and File Group Backup)
文件或文件组备份是指对数据库文件或文件夹进行备份,但其不像完整的数据库备份那样同时也进行事务日志备份。使用该备份方法可提高数据库恢复的速度,因为其仅对遭到破坏的文件或文件组进行恢复。
但是在使用文件或文件组进行恢复时,仍要求有一个自上次备份以来的事务日志备份来保证数据库的一致性。所以在进行完文件或文件组备份后应再进行事务日志备份。否则备份在文件或文件组备份中所有数据库变化将无效。
文章评论
共有位Admini5网友发表了评论 查看完整内容