欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

数据库备份 SQLServer的备份和灾难恢复

程序员文章站 2022-04-09 19:35:55
...

数据处理在现代企业运营中变得越来越重要,越来越关键,甚至会成为企业发展的一项瓶颈. 数据保护的重要性也不言而喻. 如果一个企业没有很好的数据保护方案或策略的话,一旦发生重要数据丢失,后果将会是灾难性的,伴随着会有经济利益方面的损失.

各大服务器硬件厂商(IBM,HP等)提供有很好的数据保护策略(硬件或软件).如大家熟知的RAID磁盘阵列(Redundant Array of Independent Disks)就是很好的数据保护方法.就SQL Server而言,通过维护计划可以制定详细的数据备份计划.

数据备份策略(full backup, differential backup and transaction log backup)

数据备份是为数据恢复服务的,所以建立数据备份计划之前,应先考虑是否能利用该备份有效的恢复数据(在downtime允许的时间范围内).还应先考虑系统允许的RPO(Recovery Point Objective,灾难发生后,系统或数据必须恢复的时间点), RTO(Recovery Time Objective,指当灾难发生后,所采用的系统复原工具或解决方案,可让系统或数据恢复到正常运作的状况时,所需花费的时间).

有三种通常使用的备份计划:

(1). 只有全备份

两个全备份之间的时间段发生故障,数据会丢失,只能恢复到上一个全备份的数据.

(2). 全备份+日志备份

在全备份之间加入日志备份,可以把备份时间点缩小到更小的粒度.可以在每天做一个全备份,每一个小时或者半个小时做一次日志备份.这样子的话,如果在23:59分发生故障,需要restore一个full backup+23个transaction log backup,操作恢复的时间会比较久.

(3). 全备份+差异备份+日志备份

在全备份之间加入差异备份(differential backup),差异备份之间有日志备份.

至于选择哪一种备份策略,要根据实际的情况(RTO, RPO, Server loading等)灵活运用.