计算机数据库备份与恢复技术研究
2011-12-30刘明颖
刘明颖
(吉林省计算中心,吉林 长春 130012)
随着时代的发展,互联网时代的数据资料的安全性,已经成为迫在眉睫的问题,计算机的系统故障,包括硬件故障、软件故障、网络故障、进程故障和系统故障都直接影响着数据库系统的操作。
1 什么是数据库的备份
所谓数据库的备份是指复制数据的拷贝成为后备副本,即是对现有正常的数据进行整合的过程。
备份按照不同的分类原则分为:静态备份,主要是指在备份过程中,数据库不得进行其他的操作,能够相对完整的将当时的原始备份进行完整的保留;动态备份,是指将数据存取或修改,按照备份和用户事务可以同时执行的备份。动态备份常常是作为备份资料最完整的方式,建立文件日志,将备份期间的各项事务对原有数据库的修改等活动进行登记,这样,为后续的备份副本中加上大量的日志文件,就能够将你需要的数据库恢复到原来的状态。在不断发展的现代社会,因为备份文件的需要和技术的改进,常常建立在高性能的系统,网络备份,SAN备份,归档和分级存储管理,数据容灾系统这样多种形式的备份,将数据库的运行,做到最大化的安全。
2 主要应用的备份方式
2.1 什么是高性能系统
高性能系统主要是指保证在计算机出现系统性的软硬件单点故障时,通过集群软件实现正常的业务切换,保证数据,业务等地不停顿,不间断。通过相互协作的高可用集群软件,作为一个整体对外提供多个相互备份的服务器实现单点故障时,保证业务的正常工作运行,由于在计算上集群系统的内在关联性,决定了节点之间大量的交换量,当节点增加到几十个或者几百个时候,当整个数据库发生大量的运转时,必然导致最终的系统崩溃,在高性能的系统下,既能够保证数据的正常进行业务,能够在保存备份最大化资料的同时,保证运行速度。
2.2 网络备份
单机备份的资料,往往直接连接到服务器上,服务器负担重,备份操作安全性差。当服务器采用双机或者集群时,网络备份就是通过大量的数据上传需要进行数据备份的主机上,通过客户端软件将数据通过网络传输到专门的服务器进行备份。网络备份使每台服务器负担减轻,备份操作性能高。通过网络备份能够很好的对备份介质进行管理,实现全自动备份和恢复,可实现定时备份,并支持完全备份、增量备份、差量备份等多种备份策略 网络备份为局域网中的数据备份提供了高效的备份管理手段。
2.3 SAN备份
SAN存储区域网是通过高性能的光纤接口将磁盘列阵和前端的服务器进行链接,通过管理人员集中化的管理将存储系统,强化备份和恢复策略,从而提高整个系统的效率。可以通过远距离的访问通过高速光纤传递的网络进行共享存储的设备。
2.4 归档和分级存储管理
归档和分级存储管理是与网络备份不同的另一种数据备份技术。它可用来解决网络上数据不断增长,造成数据量过大、计算机存储空间无法满足数据库存储需求的情况。归档是指将数据复制或者打包存放,以便能长时间地进行保存。归档的主要作用是长期保存数据,将有价值的数据安全地保存较长的时间。文件归档可以通过文档服务器对重要文档进行统一备份管理。普通信息数据般通过数据压缩工具进行压缩,然后定期复制后存储下来。另一种常用的归档方法是使用备份系统,将关键数据备份到可移动介质中进行存放。
2.5 数据远程复制备份
当数据遭到以上出现的诸如人为的修改,误删,软硬件的故障和黑客入侵,病毒植入造成的数据完整性破坏和可用性的破坏后,能够通过系统数据备份和高性能的处理系统加以避免外。面对,地震,海啸火灾等强烈的不可控的灾难面前,上述技术不能完全避免数据的丢失。数据远程复制系统主要保证本地数据中心和远程备份数据中心的数据一致性。数据远程复制一般通过软件数据复制和硬件数据复制技术实现,具体复制方式主要包括同步方式和异步方式。远程高可用性系统主要保证本地发生灾难后,业务及时切换到远程备份系统,它基于本地高可用性系统,实现远程故障的诊断、分类,并及时采取相应的故障接管措施。
3 什么时候进行备份
定期和不定期的备份,所谓定期,就是指在固定的周期内进行的数据库备份,备份因为消耗大量的时间和资源,通常都可以有每年,每月,每日不同的进行备份SQL Server系统的备份,可以手工完成,也能够SQL Server系统自身完成。一般要在远离火源,远离机房的地方进行备份,这也就是所谓的定期备份。所谓的不定期备份,就是指在数据库发生事务运行时,同时进行的备份,这样的备份通常都需要建立备份日志,以免在备份出现故障后,原有的数据库由于当时的运行,使得备份的资料出现滞后性。
3.1 创建、修改、删除数据库前应该备份数据库。例如执行 CREATE用 DATABASE、ALTER、DATABASE和 DROP DATABASE命令等。
3.2 创建了用户自定义对象。因为创建了用户自定义对象,master数据库就会被修改,因此,必须备份master数据库。
3.3 增加或删除服务器的系统存储过程。
3.4 修改了master、msdb、model数据库。
3.5 清除事务日志或执行了不写入事务日志的操作。
4 数据库的恢复
数据库系统运行时,磁盘损坏、电源故障、软件错误和恶意的破坏等等。在发生故障时,丢失和破坏是直接导致数据库进行大面积瘫痪的最直接导火线。
数据库恢复的基本原则和恢复方法,即数据库重复存储。有这样几种方式:一转储和建立日志(周期性的对数据库进行复制)一旦发生数据库故障,分两种情况进行处理。如果数据库已被破坏,例如,磁头脱落、磁盘损坏等,这时数据库已不能用了,就要装入最近一次复制的数据库备份到新的磁盘,然后利用日志库执行重做(REDo)处理,将这两个数据库状态之间的所有更新重新处理一遍。这样既恢复了原有的数据库,又没有丢失对数据库的更新操作。如果数据库未被破坏,但某些数据不可靠,受到怀疑。例如,程序在批处理修改数据库时异常中断。这时不必去复制存档的数据库,只要通过日志库执行撤销(UNDO)处理,撤销所有不可靠的修改,把数据库恢复到正确的状态就可以了。
数据库的故障和恢复模式,通常和相对应的恢复模式有着千丝万缕的联系,一般而言,我们将数据库故障称为事故故障。事务故障又可分为两种:一类是可以预期的事务故障。另一类是非预期的事务故障。系统故障。引起系统停止运转随之要求重新启动的事件。介质故障。在发生介质故障和遭到病毒破坏时,磁盘的物理性数据库遭到毁灭性破坏。
[1]谢振坛.计算机数据库的备份和恢复技术研究 [J],计算机数据库的备份和恢复技术研究,2011.
[2]梁晓琦.备份--数据安全的有效保障[J],特别企划,2011.
[3]段婷.数据库恢复技术的探讨[J],研究与探讨,2010.
[4]龚媛媛.数据库安全威胁及数据备份恢复技术研究[J].技术研发,2011.