Microsoft SQL Server备份体验
SQL SERVER自带备份功能说明
在欧洲,有一首流传很广的民谚:
因为丢失一根铁钉,我们失去了一块马蹄铁;
因为失去一块马蹄铁,我们失去了一匹骏马;
因为失去一匹骏马,我们失去一名骑士;
因为失去一名骑士,我们输掉了一场战争……
在企业的经营中,细节决定成败,要规避一切潜在的风险,避免因为一些小的失误而造成重大损失,在企业运营越来越依靠IT支撑的今天,企业的关键应用,比如财务软件、CRM、OA、ERP等,一旦发生数据丢失,损失将非常惨重,想想财务数据的数据丢失的后果吧,
工资无法正常发放;
当年的财务总结没办法进行;
盈利还是亏损无法计算;
下一年的业务也无法正常开展;
大客户可能因此拂袖而去。
数据已经不再是0101这样的二进制信息,而是人们的钱袋子,真正的真金白银。人们应该及时做好数据备份。
中小企业最常使用的数据库是微软的是SQL Server,本身带有自动备份功能,但多年来的经验告诉我,SQL自带的备份已经远远不能满足企业业务的连续性、安全性需求了。
SQL SERVER自带备份功能是一个简单的入门级的备份小工具,在非常简单的应用时,比如一两台SQL服务器,数据量又大,数据重要性一般的时候,SQL自带备份功能就可以胜任了。但是当数据重要性非常高时,企业不能够承担数据丢失的风险时,那么就需要寻求更加专业、更加安全可靠的数据备份解决方案。因为SQL自带备份功能有以下不足和缺陷。经过反复的筛选和比较之后,本人找到一款在功能和性能上都能对SQL自带备份功能带来非常大改善的备份工具—-爱数备份软件。下面是功能比较:
备份功能之比较
大家都知道,数据库备份有四种类型,分别应用于不同的场合,下面简要介绍一下。
1、完全备份
这是大多数人常用的方式,它可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象。但它需要花费更多的时间和空间,所以,一般推荐一周或一月做一次完全备份。
2、事务日志备份
事务日志是一个单独的文件,它记录数据库的改变,备份的时候只需要复制自上次备份以来对数据库所做的改变,所以只需要很少的时间。为了使数据库具有鲁棒性,推荐每小时甚至更频繁的备份事务日志。
3、差异备份
也叫增量备份。它是只备份数据库一部分的另一种方法,它不使用事务日志,相反,它使用整个数据库的一种新映象。它比最初的完全备份小,因为它只包含自上次完全备份以来所改变的数据库。它的优点是存储和恢复速度快。推荐每天做一次差异备份。
4、文件备份
数据库可以由硬盘上的许多文件构成。如果这个数据库非常大,并且一个晚上也不能将它备份完,那么可以使用文件备份每晚备份数据库的一部分。由于一般情况下数据库不会大到必须使用多个文件存储,所以这种备份不是很常用。
如果你只做全备份,那么受限于全备份的大小和备份时间,不可能常做。而且只有全备份,不能将数据库恢复至某个时间点。所以,我们需要全备份+日志备份。比如每天一个全备份,每隔1小时或若干分钟一个日志备份。说到差异备份,因为微软的差异备份记录的是上一次全备份以来发生的变化,所以,如果数据库的改动很频繁的话,没过多久,差异备份就会和全备份的大小接近,因此这种情况下就不合适了。因此,全备份+日志备份的方案适合绝大多数的用户。
备份文件传送至备机后,就可以高枕无忧了吗?不。作为DBA还需要检查备机上的备份文件是否能将数据库恢复至最新,如果采用日志备份,会不会因为丢失某一个日志备份文件而导致数据库不能恢复至最新?如何检查日志备份文件之间存在断档?
数据库在备份的时候,并不会检查数据页面的完整性,如果数据页坏了,备份作业仍会执行,而且不会报错,等到你发现数据页有错误的时候,你也很可能已经因为磁盘空间不足,而删除了早期的备份,而此时剩下的那些备份可能都是包含损坏的数据页,如果损坏的数据页是某个表的表头的话,那这个表你就再也没办法恢复了。