SQL2005学习(十一),中大型数据库备份还原策略

中大型数据库指的是数据库比较大,数据变化量比较大。对应中大型数据库来说,一般都不允许数据出现丢失情况,那么我们应该把数据库的恢复模式设置成完整。比如我们有一个数据库周一大小为200GB,周二大小变为230GB,周三大小变为250GB,周四大小270GB,周五大小变为290GB,如果我们制定数据库的备份策略是每天进行完整备份,那么一个星期我们的磁盘使用量就要达到了上千G,此外每次备份这样大的文件使用的时间也比较长。因此大型数据库备份策略如下

 

恢复模式设置成完整:够使用使用事务日志恢复到出故障的那个时间点

备份策略   

完整备份+日志备份+日志备份+日志备份+日志备份+日志备份+日志备份

完整备份+日志备份+日志备份+日志备份+日志备份+日志备份+日志备份

以上,我们制定了周一做完整备份,周二-----周日进行日志备份,然后重复这个过程。

 

下面我来测试下

如下图,我目前有一个zxta的数据库,在这个数据库中有一张表dbo.Y_档案,目前该表中没有记录

SQL2005学习(十一),中大型数据库备份还原策略

 

下面我在档案表中插入50条记录,插入的过程我就不截图了,插入完成后我们可以看到表中有50条记录

SQL2005学习(十一),中大型数据库备份还原策略

 

插入50条记了后我们确认下数据库的恢复模式,如下图,默认情况下就是完整恢复模式

SQL2005学习(十一),中大型数据库备份还原策略

 

确认完恢复模式后我们对zxta数据库进行完整备份输入 backup database zxta to disk=‘D:\zxta.bak’

SQL2005学习(十一),中大型数据库备份还原策略

 

备份完成后视图如下

SQL2005学习(十一),中大型数据库备份还原策略

 

下面我们再次在数据库zxta中插入49条记录 “张三”

SQL2005学习(十一),中大型数据库备份还原策略

 

然后我们再对zxta数据库进行日志备份输入:backup log zxta to disk=‘D:\zxta.bak’(这里默认会是追加,因此不会覆盖我们前面的备份)

SQL2005学习(十一),中大型数据库备份还原策略

 

下面我们再次在数据库zxta中插入20条记录“李三”

SQL2005学习(十一),中大型数据库备份还原策略

 

我们再次对zxta数据库进行日志备份,仍然备份到zxta.bak中

SQL2005学习(十一),中大型数据库备份还原策略

 

目前我们做了三次备份:完整备份+日志备份+日志备份,但时备份文件只有一个,如果我们进行了N多次备份我们怎么知道里面有几次备份呢?

SQL2005学习(十一),中大型数据库备份还原策略

 

如下图,我们选择还原zxta数据库

SQL2005学习(十一),中大型数据库备份还原策略

 

如下图,这里就显示了我们一共进行了三次备份,其中一次完整备份,二次日志备份

SQL2005学习(十一),中大型数据库备份还原策略

 

下面我来删除档案表中的数据,模拟数据库损坏删除的过程我就不截图了,如下图,目前为0行

SQL2005学习(十一),中大型数据库备份还原策略

 

下面我们就可以使用备份进行还原了,在还原的选项中我们选择“覆盖现有数据库”SQL2005学习(十一),中大型数据库备份还原策略

 

如下图,我们选择完整+所有日志,选择“确定”进行数据库还原

SQL2005学习(十一),中大型数据库备份还原策略

 

如下图,还原成功

SQL2005学习(十一),中大型数据库备份还原策略

 

如下图,我们查询档案表,仍然有119条记录。

SQL2005学习(十一),中大型数据库备份还原策略

 

以上,我就简单的测试了下数据库完整备份+日志备份以及还原。

SQL2005学习(十一),中大型数据库备份还原策略,布布扣,bubuko.com

SQL2005学习(十一),中大型数据库备份还原策略

上一篇:python爬虫,抓取oracle-base上的一些常用脚本


下一篇:SQL查看表中重复数据