1
数据库原理与应用技术
1.5.7.2 4.7.2 数据库运行维护
4.7.2 数据库运行维护

经过测试和试运行后,数据库开发工作就已完成,可投入正式运行了。数据库的生命周期也进入了运行和维护阶段。

数据库是企业的重要信息资源,要支持多种应用系统共享数据。为了让数据库高效、平稳地运行,也为了适应应用环境及物理存储的不断变化,需要对数据库进行长期的维护。这也是设计工作的继续和质量的提高。

对数据库的维护工作主要由DBA完成,主要工作包括以下几方面。

1. 数据库的备份与恢复

这是系统最重要和最经常性的维护工作。备份(Backup)就是定期或不定期地将数据库的全部或部分转储。通常将转储的副本保存在另外的计算机系统中,或将副本存储在磁带等介质上脱机保存。这样,一旦数据库系统发生大的故障,可根据备份的副本进行系统恢复(Recovery),以尽可能地减小损失。DBA应根据系统的特点,制订合适的备份恢复计划。

2. 数据库性能监控

在数据库运行过程中,监控系统运行,对监测数据进行分析,找出改进系统性能的方法是DBA的重要任务。目前主要Rdbms都提供了监测系统参数的工具,DBA可以利用这些工具方便得到系统运行过程中一系列性能参数的值。DBA应仔细分析这些数据,判断当前系统运行状况是否为最佳,应当做哪些改进。常见的改进手段包括调整系统物理参数、重组或重构数据库等。

3. 数据库的重组与重构

数据库运行一段时间后,由于不断插入、删除、修改记录,会使数据库的物理存储情况变坏,降低了数据的存取效率,数据库性能下降了,这时 DBA 就要对数据库进行重组(Reorganization)。在重组过程中,按原设计要求重新安排存储位置、回收垃圾、减少指针链等,提高系统性能。重组要付出代价,但重组又可提高性能,这是一对矛盾。为避免矛盾,最好利用计算机空闲时间进行重组。

数据库的互助组并不修改原设计的逻辑结构和物理结构,而数据库重构(Reconstruction)则不同,它是指部分修改数据库的逻辑结构和物理结构。

数据库的逻辑模式应是相对稳定的,但应用环境变化、新应用的出现及老应用内容的更新,有时要求对数据库逻辑模式做必要的变动,这时就要重构数据库。重构不是一切推倒重来,主要是在原有的基础上进行修改和扩充。但是重构比重组要复杂得多,因此必须在DBA的统一规划下进行。

RDBMS一般都提供动态模式修改功能(如SQL中的ALTER),但重构是一个可能产生错误和有待验证的过程,边重构、边运行一般是不现实的。一般在原数据库运行的同时,另建立一个新的数据库,在此基础上去完成重构工作。待新的数据库建立并通过验证后,再将应用程序转移到新数据库上,最后撤销原数据库。

重组对用户和应用是透明的,而重构一般不是。因此应让用户知道重构后的模式,并对应用做出相应的修改,以适应重构后的数据库模式。