电力企业数据库备份策略设计gwg

更新时间:2023-07-19 17:27:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

电力企业数据库备份策略设计

龚文刚1 丁维明2

(1. 东南大学动力系,江苏 南京 210096 )

(2. 东南大学洁净煤发电及燃烧技术教育部重点实验室,江苏 南京 210096)

摘要:本文对Oracle数据库各种备份策略的特点进行分析与比较,提出了一些数据文件放置的规则,并结合电力企业的特点,制定了一种比较通用的备份策略。为数据库管理人员针对其管理的数据库的特点制定完备的备份策略提供了一些帮助。

关键字:数据库 备份策略 Oracle 电力企业

一、引言

在现代电力企业中,有很多需要存储的数据。这些数据记录着生产中的各种数据和企业管理信息系统中的各种数据。电力企业数据的安全性十分重要,而实际上潜在的风险对数据是很大的威胁,如果这些风险变成现实而我们无法弥补的话,就将造成生产上的事故。设计和测试Oracle数据库的备份策略,是预防由介质、操作系统软件和其他导致重要数据库文件严重损坏的唯一安全措施。备份策略越好,在恢复过程中选择的余地越大。而且,周密的计划和严格的测试可以激发安全意识。

在我国电力企业中,大型数据库系统一般选用Oracle公司的产品,本文将结合Oracle公司的数据库系统软件来论述电力企业中数据库的备份策略。

二、备份策略的类型与特点

备份大体上可分为物理备份和逻辑备份。物理备份是实际数据库文件从一处拷贝至另一处的备份。脱机冷备份和热备份都是物理备份的例子。逻辑备份是利用SQL从数据库中提取数据,并将其存入二进制文件中。这些数据可以重新导入原来的数据库,或者以后导入其他数据库。

2.1物理备份

2.1.1脱机冷备份

脱机冷备份的是在关闭数据库的情况下,将数据库的控制文件、日志文件、数据文件和初始化参数文件利用操作系统的复制功能转存在其它存储设备上。 脱机冷备份的操作步骤如下:

1、 在操作系统级创建一个文本文件,标志备份开始;

2、 禁止登录到应用程序,提供数据库不能使用的警告信息;

3、 使用shutdown normal命令关闭数据库;

4、 把当天的归档日志移至上一次备份的位置;

5、 数据文件控制文件和联机日志文件映像拷贝,把它们拷贝到备份磁盘处;

6、 启动数据库,允许对应应用程序的登录;

7、 将数据库映像拷贝到磁带;

8、 通过删除指示备份开始的文件来结束备份。

脱机冷备份是最快和最安全的方法。其主要优点是:

● 备份速度快,只需拷贝文件,归档方便,简单拷贝即可。

● 容易恢复到某个时间点上,能与归档方法相结合,作数据库“最新状态”的恢复;

● 低度维护,高度安全。

其主要不足之处在于:

● 单独使用时,只能提供到“某一时间点上”的恢复。

● 在实施备份的全过程中,数据库只能执行备份操作,不能执行其它事务。

● 如果磁盘空间有限,就只能将有关信息拷贝到磁带等其它外部存储设备上,速度可能会很慢。

● 不能按表或按用户恢复。

2.1.2联机热备份

当数据库打开时,在归档模式(ARCHIVELOG)下,同时备份数据文件、日志文件和控制文件的备份称为联机热备份。

进行联机热备份的步骤:

1、 数据库应处于ARCHIVELOG模式下,否则,安装数据库并在sql plus中发出以下

命令:

ALTER DATABASE ARCHIVELOG;

ARCHIVE LOG START;

ALTER DATABASE OPEN;

2、发送命令获得最早的联机日志序列号。

ARCHIVE LOG LIST;

3、设置要备份的表空间为热备份模式。

ALTER TABLESPACE tablespace_name BEGIN BACKUP;

4、使用操作系统命令备份所有与该表空间有关的数据库文件。

5、设置表空间回到非热备份模式。

ALTER TABLESPACE tablespace_name END BACKUP;

6、再次执行ARCHIVE LOG START命令获得当前日志序列号,这是联机备份中必须保留的最后一个重做日志文件。使用下面的命令强制日志切换,以便Oracle创建一个归档日志文件。

ALTER SYSTEM SWITCH LOGFILE;

7、使用操作系统命令备份由步骤2和6决定的所有归档日志文件。

8、备份控制文件。

ALTER DATABASE BACKUP CONTROLFILE TO ‘filespec’

若将被控制文件备份到磁盘上,确保同时将控制文件拷贝到磁带上。

联机热备份与脱机备份相比具有以下优点:

● 数据库再进行备份期间,完全可由用户访问,包括访问正在备份的表空间。 ● 不必同时备份所有的数据文件,可进行部分备份。部分备份的表空间可运用重

做日志进行完全数据库恢复。

其主要不足之处是:

● 在操作过程中不能出错,否则后果严重,不允许“以失败而告终”。

● 若热备份不成功,所得结果不可用于时间点的恢复;

2.1.3 双机热备份

双机热备份是指除了使用的主数据库外,在另外一台服务器上建立一个与主数据库完全一致的数据库。这两个数据库文件结构唯一显著的区别在于备用数据库由一个特殊的控制文件。在配置备用数据库特性之前,必须启用归档。并且从这时起,一直启用归档,才有可能通过归档日志文件使备用数据库与主数据库保持完全同步。

当主数据库发生故障,备用数据库可被打开并激活,所有的用户切换导备用服务器上继续工作。这种切换之后,备用数据库成为主数据库,等原主数据库恢复完成后,可将其配置成为备用服务器。备用数据库的配置步骤如下:

1、对于主服务器:

● 备份初始化文件、数据库文件

● 创建备用数据库控制文件

● 如果想要启用归档进程在备用位置进行归档,配置init.ora文件中的LOG_ARCHIVE_DEST_n参数,使其指向备用数据库的归档目标。

2、把文件传输到备用服务器

3、对于备用服务器:

● 重建从主服务器拷贝的所有数据文件,包括备用控制文件

● 创建备用数据库实例

● 使用备用控制文件安装备用数据库

● 保留备用数据库为管理恢复模式或手工恢复模式

2.2逻辑备份

逻辑备份是指备份数据库中的数据,但不记录数据的物理位置。由Oracle提供的导出工具export可以用于执行数据库的逻辑备份。导出备份工具拷贝数据与数据库定义,并以Oracle的内部格式将它们保存为二进制的操作系统文件。

Export实用工具在CONVENTIONAL PATH和DIRECT PATH两种模式下使用。DIRECT PATH导出特性直接读取数据,跳过SQL处理过程层,将数据库设置为直接读取模式,数据库数据块读入export对话的专用内存,而不是读入共享内存,杜绝了与其它用户对数据库资源的使用竞争,因此比CONVENTIONAL PATH导出特性提取数据快得多。

在逻辑备份中有四种导出模式,可以用来导出数据。

1、 完全导出模式(FULL)

完全数据库导出模式可以进一步分为完全导出、累积导出与增量导出。累积导

出与增量导出比完全导出时间短,可以只导出发生改变的数据和定义。使用哪种导

出取决于表中的数据是如何被修改的。

● 完全导出执行时对数据库中所有表的一次导出,并为每个表重新设定增量导出

信息。要执行这种类型的导出,应该在exp命令中设置参数INCTYPE=COMPLETE。

信息将写入SYS.INCVID、SYS.INCFIL、SYS.INCEXP等表中。在每次完全导出

之后,就不再需要此前全部的累积与增量导出文件了。例如:

exp userid=system/manager full=Y inctype=complete constraints=Y

file=full_export_filename

exp命令也支持使用参数文件,参数文件允许在一个文本文件中定义导出参数,

可以方便修改和重用该文件。对于上述的命令行参数可以在参数文件

db_export.txt中定义,其内容如下: Full = Y Inctype = complete Constraints = Y File = c:\export\db_exp.dmp 在参数文件中指定的参数可以通过实用命令行选项”PARFILE=文件名”传递给导出工具。例如:exp system/manager parfile=file_name ● 累积数据库导出只导出在最近一次累积导出或完全导出之后,修改过或新创建的表,并记录每个导出表的详细导出信息。在每次累积导出之后,不需要任何以前的增量导出文件了。例如: exp userid=system/manager full=Y inctype=cumulative constraints=Y file=cumulative_export_filename ● 增量数据库导出将导出数据库最近一次增长、累积或完全导出以后,全部修改过或新创建的表,并记录每个导出表的详细信息。另外,增量导出允许在不小心删除或修改了一个表之后,快速恢复该表。例如: exp userid=system/manager full=Y inctype=incremental constraints=Y file=incremental_export_filename 2、 用户模式导出 用户模式的导出工具可以用于导出一个或多个数据库用户的模式。允许调用导出工具的用户备份他自己的模式对象。如果具有EXP_FULL_DATABASE的角色,除了可以导出用户自己模式中的表,还可以导出其他用户模式中的表。 用户模式导出使用Oracle企业管理器的数据管理图形化工具来完成导出的操作。在这个工具中有一系列的向导来帮助用户指定各种参数,限于篇幅不详述。 3、表模式导出

表模式导出允许备份表数据与/或表定义。这种导出模式适用于只要备份一个

用户模式中的表。在这种模式下,用户可以导出由他们所拥有的表,如果拥有的表的定义中指向其他对象,并且在对象上用户没有任何权限,则不能导出该表定义。如果用户被授予EXP_FULL_DATABASE角色,通过指明TABLES=模式.表名,可以导出数据库中任何用户模式中的表。例子:????

4、 表空间模式导出

表空间模式导出允许移出一个Oracle数据库的子集,并将它“插入”导另一

个Oracle数据库中。通过传输表空间来移动数据比任何一种导出/导入工具移动同一数据的速度都要快很多,因为传输一个表空间需要拷贝数据文件,并将数据库模式信息集成到数据字典中。也可以使用传输表空间索引数据,从而避免重建索引。在移动数据据库表空间之前,需要把表空间设置为只读表空间。例如使用下面的命令将表空间从数据库种导出:

EXP TRANSPORT_TABLESPACE=Y TABLESPACES=DATA_AS FILE=DATATS.DMP

LOG=DATATS.LOG

逻辑备份的优点有:

● 在导出时可以检测到数据块损坏并中止导出过程。然后在再次执行逻辑备份前,需要修复表中的损坏。

● 导出提供了特殊级别的保护手段,避免用户错误或结构性失效。

● 导出提供了极大的灵活性,可以选择需要导出的数据和定义。

● 可以执行完全(COMPLETE)、增量(INCREMENTAL)或累积(CUMULATIVE)导出。

导出备份是可移植的,可以导入任何当前任何机器上的任一数据库中。

● 在Oracle8i中,使用导出和导入工具可以更改分区。

其不足的地方是如果导出大量的数据,速度会非常的慢。 ●

三、备份策略的规划与制定

在制定具体的备份策略之前,理解数据库文件放置的特定规则及其它设计上需要考虑的事项是非常重要的,因为它们对备份策略的影响很大。下面叙述一些简单的规则,他们能够在磁盘或磁带驱动器失效时,强化备份策略并减少恢复时间。

1、 将设置日志文件时,将归档目的地设置到磁盘上,并在以后拷贝到磁带上。归档日

志文件不和任何数据库文件或联机重做日志文件存放在同一个物理磁盘设备中。

2、 使用单独磁盘或磁盘组保存数据库文件的备份拷贝,不把数据库文件和其备份文件

存放在同一物理设备上。

3、 保持控制文件的多个拷贝,控制文件的每个拷贝应置于几个不同的、安装于不同磁

盘控制器下的磁盘中。

4、 联机日志文件的大小应在估计每小时生成的事务重做记录之后确定。联机日志文件

应为多个,每个组至少保持两个日志文件成员,日志组的两个成员不存放在同一物理设备上。

5、 使用廉价冗余磁盘阵列(RAID)来保证磁盘的可靠性,根据不同数据库系统的特点

来选择不同的级别。

6、 保持归档重做日志的多个拷贝,在许多情况下允许从多个介质故障中恢复。

7、 通过在磁盘上保持所有数据库文件和所有相关的归档重做日志文件的最新备份,可

使从备份中前滚数据库或数据库文件的过程简化或加速。对于许多系统,更多的时间花费在从磁带恢复归档重做日志上。

8、 只要通过增加、重命名、删除日志文件或数据文件所属的表空间改变数据库结构,

都应备份控制文件,另外还要备份任何增加的数据文件。

考虑不同备份策略的特点,针对大部分的电力企业,设计一个比较合适的备份策略如下:

数据库采用归档模式运行,物理备份和逻辑备份结合使用。周一到周六每天联机热备份备份数据库中表空间总数目1/3的表空间,这意味着每三天末得到数据库的完整备份。脱机冷备份每周进行一次,周六晚上进行。每周一开始执行一次完全导出备份,在这周的其他的时间执行增量导出备份。这些备份的操作可以利用批处理文件保存起来,让系统每天自动完成。数据库的日志文件、控制文件的配置以及备份出来的日志和文件的存放严格参照上面的规则进行。

四、总结

本文通过对Oracle数据库各种备份策略特点的分析与比较,为数据库管理人员针对自己管理的数据库的特点制定备份策略提供了一些帮助,并结合电力企业的特点,制定了一种比较通用的备份策略。

参考书目:

1、《Oracle8i Enterprise Edition Installation Release 8.15》

2、《Oracle9i DBA》赵军锁、孙文明、邓波等译 电子工业出版社

3、《Oracle数据库管理员 基础教程》乐嘉锦 王兰成等译 机械工业出版社

4、Oracle数据库下的备份恢复策略 武方方 沈虹 西安工业学院学报Vol23

本文来源:https://www.bwwdw.com/article/d271.html

Top