电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

Oracle备份

来源:文库作者:开心麻花2025-09-191

Oracle备份(精选9篇)

Oracle备份 第1篇

不管数据库如何精心设计、配置和优化,它们都难免会出现系统或硬件故障,如:语句故障、用户进程故障、实例故障、介质故障等。一旦数据库出现故障将给用户数据带来灾难性的结果。因此数据库管理员必须采取必要的备份策略以避免数据灾难的发生。

Oracle提供了强大的备份策略,其备份方式分为物理备份和逻辑备份两大类型。物理备份是数据库文件拷贝的备份,根据备份时数据所处状态的不同,物理备份又可分为脱机备份(冷备份)和联机备份(热备份);逻辑备份是对数据库逻辑组件(表、存储过程等数据库对象)的备份,逻辑备份使用Exp命令将数据库中相应的逻辑对象存储为二进制文件。

2 脱机备份

脱机备份是在数据库被正常关闭之后进行的数据文件的物理备份。当数据库正常关闭时,将数据库的所有数据文件、控制文件、参数文件、口令文件、重做日志文件都拷贝到备份介质中。这些文件因而保持着数据关闭时的完整的映象,对于备份Oracle信息而言,脱机备份是最快和最安全的方法。

2.1 脱机备份的优点

1)是非常快速的备份方法(只需拷文件)

2)容易归档(简单拷贝即可)

3)容易恢复到某个时间点上(只需将文件再拷贝回去)

4)能与归档方法相结合,做数据库“最佳状态”的恢复。

5)低度维护,高安全性。

2.2 脱机备份的方法

1)关闭数据库shoutdown normal;

2)将数据文件、控制文件、参数文件(可选)、联机重做日志文件及存档日志文件(Oracle工作在Archivelog方式)拷贝到备份磁盘。

3)重新启动数据库startup open数据库名;

脱机备份操作简单、安全可靠,但脱机备份只能恢复到数据库被关闭时的状态,同时只有在关闭数据库的状态下才能进行备份操作。实际应用中很多情况下数据库必须不间断的工作,不可能使用脱机备份数据库,在这种情况下只能采用联机备份。

3 联机备份

联机数据库备份是不一致备份,因为在备份过程中数据库中的部分数据可能被修改,因此数据库一旦出现故障只能利用备份文件与归档日志做完全或不完全的恢复,此时数据库必需工作在Archivelog方式。

3.1 Archivelog方式下的备份策略

1)在初始建立数据库时,执行脱机全数据库备份,这是整个数据库备份的基础,它保存着全部原始数据库文件和控制文件的备份;

2)定期进行全数据库备份(联机备份);

3)每次对数据库进行结构修改时,必须进行控制文件备份。

3.2 联机备份的方法

在数据文件备份之前,对应的表空间必须通过使用ALTER TABLESPACEBEGIN BACKUP以备份方式放置。然后组成表空间的数据文件可以使用类似脱机备份的操作系统命令进行拷贝。在数据文件用操作系统命令拷贝后,应使用ALTER TA-BLESPACEEND BACKUP命令使表空间脱离联机备份方式。同时用ALTER DATABSEBACKUP CONTROLFILE命令备份控制文件。(下转第4365页)(上接第4363页)

联机备份没有必要备份联机日志,但必须是归档状态,在实例恢复的时候,可能需要用到归档日志。当前联机日志一定要保护好或是处于镜像状态,当前联机日志的损坏,对于数据库的损坏是巨大的,只能以数据的丢失来进行数据库的恢复工作。

对于临时表空间,存放的是临时信息,在联机备份是也可以考虑不用备份,如果临时文件发生故障,可以删除该数据文件与表空间,重建一个临时表空间。

3.3 联机备份的优点

1)可在表空间或数据文件级备份,备份时间短。

2)备份时数据库仍可使用。

3)可达到秒级恢复(恢复到某一时间点上)。

4)可对几乎所有数据库实体作恢复。

5)恢复是快速的,在大多数情况下在数据库仍工作时恢复。

当备份的数据量不是太大,需要经常性的数据备份时,可以使用逻辑备份。ORACLE数据库的逻辑备份分为三种模式:表备份、用户备份、表空间备份和完全备份。

表模式:备份某个用户模式下指定的对象(表)。

exp用户名/密码@适配器tables=(table list)file=备份文件名。

用户模式:备份某个用户模式下的所有对象。

exp用户名/密码@适配器file=备份文件名owner=用户名。

表空间模式:备份整个表空间。

exp用户名/密码@适配器tablespaces=(tablespace list)file=备份文件名

完全备份:备份完整的数据库。

exp用户名/密码@适配器full=y file=备份文件名

对于数据库逻辑备份,建议采用增量备份,即只备份上一次备份后更改的数据。

4 结论

选择备份策略的依据是:丢失数据的代价与确保数据不丢失的代价之比。还有的时候,硬件的备份有时根本满足不了现实需要,假如你误删了一个表,但是你又想恢复的时候,数据库的备份就变的特别重要了。作为DBA,有责任从以下三个方面维护数据库的可恢复性:1)使数据库的失效次数减到最少,从而使数据库保持最大的可用性;2)当数据库不可避免地失效后,要使恢复时间减到最少,从而使恢复的效率达到最高;3)当数据库失效后,要确保尽量少的数据丢失或根本不丢失,从而使数据具有最大的可恢复性。

摘要:任何数据库系统都可能因人为或非人为的因素带来数据灾难。该文详细探讨Oracle数据库系统中所提供的强大的备份策略,以帮助数据库管理员最大限度地减少因数据灾难所带来的损失。

关键词:备份,联机备份,脱机备份,物理备份,逻辑备份

参考文献

[1]丁铖.Oracle8/8i数据库系统管理[M].北京:人民邮电出版社,2001.

[2]盖国强.循序渐进Oracle--数据库管理、优化与备份恢复[M].北京:人民邮电出版社,2007.

[3]袁福庆.Oracle数据库管理与维护手册[M].北京:人民邮电出版社,2006.

ORACLE备份解决方案范文 第2篇

2009年09月16日 星期三 14:00 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。导出备件是一种逻辑备份,冷备份和热备份是物理备份。

一、导出/导入(Export/Import)

利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。

1、简单导出数据(Export)和导入数据(Import)

Oracle支持三种方式类型的输出:

(1)、表方式(T方式),将指定表的数据导出。

(2)、用户方式(U方式),将指定用户的所有对象及数据导出。(3)、全库方式(Full方式),瘵数据库中的所有对象导出。

数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。

2、增量导出/导入

增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。

增量导出包括三种类型:

(1)、“完全”增量导出(Complete)即备份三个数据库,比如:

exp system/manager inctype=complete file=040731.dmp(2)、“增量型”增量导出

备份上一次备份后改变的数据,比如:

exp system/manager inctype=incremental file=040731.dmp(3)、“累积型”增量导出

累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如: exp system/manager inctype=cumulative file=040731.dmp 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。

比如数据库的被封任务可以做如下安排:

星期一:完全备份(A)星期二:增量导出(B)星期三:增量导出(C)星期四:增量导出(D)星期五:累计导出(E)星期六:增量导出(F)星期日:增量导出(G)

如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:

第一步:用命令CREATE DATABASE重新生成数据库结构; 第二步:创建一个足够大的附加回滚。第三步:完全增量导入A:

imp system/manager inctype=RESTORE FULL=y FILE=A 第四步:累计增量导入E:

imp system/manager inctype=RESTORE FULL=Y FILE=E 第五步:最近增量导入F:

imp system/manager inctype=RESTORE FULL=Y FILE=F

二、冷备份

冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是:

1、是非常快速的备份方法(只需拷文件)2、容易归档(简单拷贝即可)

3、容易恢复到某个时间点上(只需将文件再拷贝回去)4、能与归档方法相结合,做数据库“最佳状态”的恢复。5、低度维护,高度安全。

但冷备份也有如下不足:

1、单独使用时,只能提供到“某一时间点上”的恢复。2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。

3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。4、不能按表或按用户恢复。

如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:

1、所有数据文件 2、所有控制文件

3、所有联机REDO LOG文件 4、Init.ora文件(可选)

值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。

下面是作冷备份的完整例子。

(1)关闭数据库 sqlplus /nolog sql>connect /as sysdba sql>shutdown normal;(2)用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件 sql>cp(3)重启Oracle数据库 sql>startup

三、热备份

热备份是在数据库运行的情况下,采用archivelog mode方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:

1. 数据文件一个表空间一个表空间的备份。

(1)设置表空间为备份状态(2)备份表空间的数据文件(3)回复表空间为正常状态

2. 备份归档log文件

(1)临时停止归档进程

(2)log下那些在archive rede log目标目录中的文件(3)重新启动archive进程(4)备份归档的redo log文件

3. 用alter database bachup controlfile命令来备份控制文件 热备份的优点是:

1. 可在表空间或数据库文件级备份,备份的时间短。2. 备份时数据库仍可使用。

3.可达到秒级恢复(恢复到某一时间点上)。4. 可对几乎所有数据库实体做恢复

5. 恢复是快速的,在大多数情况下爱数据库仍工作时恢复。

热备份的不足是:

1. 不能出错,否则后果严重

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

Oracle数据库备份和恢复 第3篇

1 Oracle数据库认识

甲骨文公司推出的关系数据库管理系统Oracle数据库具有良好的硬件兼容性, 具有对大数据量、多用户事务的处理能力, 同时还支持不同类型的操作系统, 并且能遵守包括通用数据存取语言、操作系统 (操作系统漏洞、操作系统补丁和操作系统用户等) 、用户接口和网络通信协议等方面的工业标准。Oracle数据库具备强大的数据库管理功能与分布式处理能力, 如支持大量的多媒体数据, 包括多维数据结构、图像、声音和动画等方面的数据, 可以有效保障数据的安全性及稳定性。基于此, 使得Oracle数据库在政府、金融、教育等部门中应用广泛。

2 Oracle数据库备份

数据库备份是非常重要的一个环节, 可以说能够进行怎样的数据恢复依赖于怎样的数据备份, 因此它也是数据库恢复非常重要的一步。备份的好坏对数据库恢复的精确性和及时性有非常重要的影响, 可以说备份和恢复是互相联系的概念。Oracle数据导入和导出imp/exp就相当于oracle数据还原和备份。Oracle数据库备份可分为物理备份和逻辑备份, 其中物理备份是为了实现数据库的完整恢复, 而将组成数据库的实际操作系统文件加以拷贝的过程, 一般是从磁盘到磁带进行备份。进行物理备份的数据库需在归档模式下运行, 且外部存储设备需满足备份的需要。物理备份又有冷备份与热备份之分, 其中冷备份是极为快速的备份方法, 主要是在数据库正常关闭之时提供一个完整的数据库, 能和归档方法相结合, 做到数据库“最佳状态”的恢复。但是, 冷备份存在的问题是不能按表或按用户恢复, 单独使用时只能提供“某一时间点上”的恢复, 并且在冷备份过程中数据库要处于关闭状态。

借用第三方软件所进行的冷备份主要分三个步骤, 首先是关闭运行中的oracle数据库, 使其内外部运行模块处于停止状态, 采用命令符:sqlplus / as sysdba;shutdown immediate开展这一步骤。其次, 进行数据库的备份, 通过命令符:host copy d: oracle oradata *.* e: backup 20151231, 将整个数据库文件存储到别的存储介质或是存储位置当中, 也可以只备份部分数据库文件, 诸如配置文件、控制文件等。最后是启动Oracle数据库, 具体通过命令符startup开展这一步骤。

与冷备份相反, 热备份则需要在数据库运行的情况下进行数据库的备份, 又称为联机备份, 其备份方法是archivelog mode。热备份可对几乎所有数据库实体达到秒级恢复, 并且能在表空间或者是数据库文件中进行备份, 所用时间短。热备份与冷备份相辅相成, 互为补充, 一旦出现问题, 可以借由两种备份资料帮助信息恢复。开展热备份, 需要数据库运行于archivelog的状态之下, 并且需要大量的档案空间, 也需要分三个步骤进行备份。一是先检查数据库是否处于归档模式。命令符:sqlplus / as sysdba;archive log list。二是切换为归档模式。命令符:alter system set log_archive_dir='location=d: backup Arclog'。三是对文件进行热备份。命令符:alter database backup controlfile to 'd: backup ctl.bkp' (备份控制文件) ;alter system archive log current (备份当前联机重做日志文件) 。

而Oracle数据库的逻辑备份则需要借助EXP工具及SQL语言, 从数据库中抽取数据并存于二进制文件当中。逻辑备份操作简单, 且无需特定的外部存储设备, 无需数据库运行于归档模式下, 其一般分为用户备份、表备份和完全备份三种形式, 主要用于业务数据库的备份。

3 Oracle数据库恢复

数据库恢复是把数据库由存在故障的状态转变为无故障状态的过程。数据库故障是指数据库运行状态下影响数据库正常使用的特殊事件。数据库故障有许多类型:语句失败;用户进程失败;用户或应用错误操作;实例失败等。通常根据故障的类型不同分为实例恢复和介质恢复。其中实例恢复主要是Oracle在其实例产生故障之后, 自行进行恢复的形式。而介质恢复则是在存放数据库中的介质产生故障时进行的恢复。基于Oracle数据库不同形式的备份, 其恢复有物理备份恢复和逻辑备份恢复之分。物理备份恢复主要分为四个步骤, 首先是在原位置上拷贝数据文件进行备份, 将该文件设置成为离线状态, 其命令符为:alter database datafile 4offline drop。其次是打开数据库, 其命令符为:alter database open。 再次是恢复数据库中的数据文件, 其命令符为:recover datafile。最后是将数据文件设为联机状态, 其命令符为:alter database datafile 4 online。

4 结语

随着现代科技的不断发展, Oracle数据库备份和恢复方法也层出不穷, 工作人员需要在实际工作当中, 不断完善Oracle备份和恢复方法, 做到具体问题具体分析, 以提高备份数据的可用性。

参考文献

[1]刘钰.浅谈ORACLE数据库的管理与维护[J].计算机光盘软件与应用, 2014 (13) .

Oracle备份 第4篇

目前, 数据已成为信息系统的基础核心和重要资源, 同时也是各单位的宝贵财富, 数据 的丢失将导致直接经济损失和用户数据的丢失, 严重影响对社会提供正常的服务。另一方面, 随着信息技术的迅猛发展和广泛应用, 业务数据还将会随业务的开展而快速增加。但由于系 统故障,数据库有时可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如做了备份, 恢复数据就显得很容易。由此可见, 做好数据库的备份至关重要。因此,建立一个满足当前 和将来的数据备份需求的备份系统是必不可少的。传统的数据备份方式主要采用主机内置或 外置的磁带机对数据进行冷备份, 这种方式在数据量不大、操作系统种类单

一、服务器数量 有限的情况下, 不失为一种既经济又简明的备份手段。但随着计算机规模的扩大, 数据量几 何级的增长以及分布式网络环境的兴起, 将越来越多的业务分布在不同的机器、不同的操作平台上,这种单机的人工冷备份方式越来越不适应当今分布式网络环境。

因此迫切需要建立一个集中的、自动在线的企业级备份系统。备份的内容应当包括基于 业务的业务数据,又包括 IT 系统中重要的日志文件、参数文件、配置文件、控制文件等。本文以 ORACLE 数据库为例,结合金华电信的几个相关业务系统目前正在实施的备份方案, 介绍 ORACLE 数据库的备份与恢复。ORACLE数据备份与数据恢复方案 2.1 导出和导入(Export/Import 利用 Export 可将数据从数据库中提取出来,利用 Import 则可将提取出来的数据送回到 Oracle 数据库中去。

1、简单导出数据(Export和导入数据(Import

Oracle 支持三种方式类型的输出:(1表方式(T方式 ,将指定表的数据导出。

(2用户方式(U方式 ,将指定用户的所有对象及数据导出。(3全库方式(Full方式 ,瘵数据库中的所有对象导出。

数据导入(Import的过程是数据导出(Export的逆过程, 分别将数据文件导入数据库和将 数据库数据导出到数据文件。

2、增量导出 /导入

增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为

SYSTEM 来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为 export.dmp ,如果不希望自己的输出文件定名为 export.dmp ,必须在命令行中指出要用的文 件名。

增量导出包括三种类型:(1“ 完 全 ” 增 量 导 出(Complete即 备 份 三 个 数 据 库 , 比 如 :exp system/manager inctype=complete file=040731.dmp。

(2“ 增 量 型 ” 增 量 导 出 备 份 上 一 次 备 份 后 改 变 的 数 据 , 比 如 :exp system/manager inctype=incremental file=040731.dmp。

(3“ 累积型 ” 增量导出累计型导出方式是导出自上次 “ 完全 ” 导出之后数据库中变化了的 信息。比如:exp system/manager inctype=cumulative file=040731.dmp。

数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。比如数据库的被封任务可以做如下安排:

星期一:完全备份(A 星期二:增量导出(B 星期三:增量导出(C 星期四:增量导出(D 星期五:累计导出(E 星期六:增量导出(F 星期日:增量导出(G。

如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:第一步:用命令 CREATE DATABASE 重新生成数据库结构;第二步:创建一个足够大的附加回滚;第三步:完全增量导入 A :imp system/manager inctype=RESTORE FULL=y FILE=A 第四步:累计增量导入 E :imp system/manager inctype=RESTORE FULL=Y FILE=E 第五步:最近增量导入 F :imp system/manager inctype=RESTORE FULL=Y FILE=F 2.2 冷备份

冷备份发生在数据库已经正常关闭的情况下, 当正常关闭时会提供给我们一个完整的数 据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份 Oracle 信息而言, 冷备份时最快和最安全的方法。冷备份的优点是:

1、是非常快速的备份方法(只需拷文件;

2、容易归档(简单拷贝即可;

3、容易恢复到某个时间点上(只需将文件再拷贝回去;

4、能与归档方法相结合,做数据库 “ 最佳状态 ” 的恢复;

5、低度维护,高度安全。但冷备份也有如下不足:

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

2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷 备份过程中,数据库必须是关闭状态;

3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢;

4、不能按表或按用户恢复。

如果可能的话(主要看效率 , 应将信息备份到磁盘上, 然后启动数据库(使用户可以工作 并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作。冷备份中必须拷贝的文件 包括:

1、所有数据文件。

2、所有控制文件。

3、所有联机 REDO LOG文件。

4、Init.ora 文件(可选。

值得注意的使冷备份必须在数据库关闭的情况下进行, 当数据库处于打开状态时, 执行 数据库文件系统备份是无效的。

下面是作冷备份的完整例子:(1 关闭数据库;sqlplus /nolog sql>connect /as sysdba sql>shutdown normal;(2 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件 sql>cp。

(3 重启 Oracle 数据库 sql>startup。2.3 热备份

热备份是在数据库运行的情况下,采用 archivelog mode方式备份数据库的方法。所以, 如果你有昨天夜里的一个冷备份而且又有今天的热备份文件, 在发生问题时, 就可以利用这 些资料恢复更多的信息。热备份要求数据库在 Archivelog 方式下操作, 并需要大量的档案空 间。一旦数据库运行在 archivelog 状态下,就可以做备份了。热备份的命令文件由三部分组 成: 1.数据文件一个表空间一个表空间的备份:(1设置表空间为备份状态;(2备份表空间的数据文件;(3回复表空间为正常状态。2.备份归档 log 文件:(1临时停止归档进程;(2log下那些在 archive rede log目标目录中的文件;(3重新启动 archive 进程;(4备份归档的 redo log文件。

3.用 alter database bachup controlfile命令来备份控制文件: 热备份的优点是: 1.可在表空间或数据库文件级备份,备份的时间短。2.备份时数据库仍可使用。

3.可达到秒级恢复(恢复到某一时间点上。4.可对几乎所有数据库实体做恢复。

5.恢复是快速的,在大多数情况下爱数据库仍工作时恢复。热备份的不足是: 1.不能出错,否则后果严重;2.若热备份不成功,所得结果不可用于时间点的恢复;3.因难于维护,所以要特别仔细小心,不允许 “ 以失败告终 ”。3 系统数据库备份策略

数据库运行在归档模式下, 利用 Veritas 软件模块调用数据库的备份接口进行在线的热 备份, 可以在备份时,对备份数据保存在不同的存储对象中, 以满足客户容灾的要求, 可以 利用 Veritas 的多线程的数据迁移、利用多个磁带驱动器同时读写提高其数据备份的效率。针对数据库的总数据量和增量数据量大小, 我们可以利用数据库的多级的增量备份机制, 结 合 Veritas 强大的备份数据追踪寻址能力和介质管理功能,制定灵活的备份策略,实现全 自动的备份数据的全生命周期管理。

4备份系统数据库恢复策略

通过本地的 Veritas Server结合 Veritas for Databases利用备份数据进行数据恢 复。恢复时, Veritas 可以实现多线程的数据恢复,利用 Veritas 独特的磁带分类集中存 放技术,减少磁带的就位时间,提高数据恢复的效率。

先用最近一次的全备份恢复+恢复最近一次的增量备份+增量备份到断点的 ARCHIVE LOG 来恢复(要求数据库在 ARCHIVE LOG 模式下工作)。这种恢复方式比全部用 ARCHIVE LOG 恢复要快。如果两份冗余的最近一次增量备份都不可用,可以追溯再上次的增量备份来恢复,然后 用增量备份到断点的 ARCHIVE LOG 恢复。如果最近一次的全备份恢复都不可用,则利用上个周期的全备份+上个周期的最后一次 增量备份+本周期的最近一次增量备份+增量备份到断点的 ARCHIVE LOG 来恢复。如果增量备份都不可用,那么用全备份+ARCHIVE LOG 来恢复。5 数据库恢复可以分为以下两类: 5.1 实例故障的一致性恢复 当实例意外

地(如掉电、后台进程故障等)或预料地(发出 SHUTDOUM ABORT 语句)中 止时出现实例故障,此时需要实例恢复。实例恢复将数据库恢复到故障之前的事务一致状态。如果在在线后备发现实例故障,则需介质恢复。在其它情况 Oracle 在下次数据库起动时(对 新实例装配和打开),自动地执行实例恢复。如果需要,从装配状态变为打开状态,自动地 激发实例恢复,由下列处理:

(1)

为了解恢复数据文件中没有记录的数据,进行向前滚。该数据记录在在线日志,包括对回滚段的内容恢复。所指定的操作。

(2)回滚未提交的事务,按步 1 重新生成回滚段

(4)

(3)释放在故障时正在处理事务所持有的资源。

解决在故障时正经历一阶段提交的任何悬而未决的分布事务。5.2 介质故障或文件错误的不一致恢复 介质故障是当一个文件、一个文件的部分或磁盘不能读或不能写时出现的故障。文件错 误一般指意外的错误导致文件被删除或意外事故导致文件的不一致。这种状态下的数据库都 是不一致的,需要 DBA 手工来进行数据库的恢复,这种恢复有两种形式,决定于数据库运行 的归档方式和备份方式。(1)完全介质恢复可恢复全部丢失的修改。一般情况下需要有数据库的备份且数据库 运行在归档状态下并且有可用归档日志时才可能。对于不同类型的错误,有不同类型的完全 恢复可使用,其决定于毁坏文件和数据库的可用性。(2)不完全介质恢复是在完全介质恢复不可能或不要求时进行的介质恢复。重构受损 的数据库,使其恢复介质故障前或用户出错之前的一个事务一致性状态。不完全介质恢复有 不同类型的使用,决定于需要不完全介质恢复的情况,有下列类型:基于撤消、基于时间和 基于修改的不完全恢复。

基于撤消(CANCEL恢复:在某种情况,不完全介质恢复必须被控制,DBA 可撤消在指定 点的操作。基于撤消的恢复地在一个或多个日志组(在线的或归档的)已被介质故障所破坏,不能用于恢复过程时使用,所以介质恢复必须控制,以致在使用最近的、未损的日志组于数 据文件后中止恢复操作。

基于时间(TIME和基于修改(SCN的恢复:如果 DBA 希望恢复到过去的某个指定点,是 一种理想的不完全介质恢复,一般发生在恢复到某个特定操作之前,恢复到如意外删除某个 数据表之前。

Oracle备份 第5篇

关键词:Oracle数据库,TDE,数据加密,DUMP加密

0 引言

通过参与数据割接前期的数据分析工作可知, 数据分析的首要任务就是尽量获取真实的原始数据。尽管目前数据库软件有oracle、sqlserver、sybase等多种, 但出于灾难容错考虑, 每个厂家都会提供每日数据备份功能, 每天产生DUMP文件。

DUMP文件的产生大都依赖于数据库软件本身提供的备份工具, 利用某些恢复工具可以对DUMP文件进行尝试性恢复。初期无法一次性恢复成功, 但是在恢复过程中恢复工具会在日志中打印错误信息, 这些错误信息中包含具体错误原因, 比如缺少用户、缺少表空间、缺少权限等, 大多数都会指明具体的用户名、表空间名、权限名等, 通过建立这些对象, 最终都能实现数据恢复。

由于DUMP文件并未进行任何保护, 其他技术人员可以通过非正规途径获取到系统备份, 并恢复这些数据。那么系统的知识产权、敏感信息同样面临严重威胁, 因此, 提高信息安全性已迫在眉睫。

1 解决思路

由于数据库系统种类较多, 本文主要针对Oracle11g数据库进行专题研究。

针对上面提出的问题, 有如下几种解决思路:①数据级加密, 也就是数据在写入库中时就完成加密动作。Oracle提供了一个非常好用的技术:透明数据加密 (Transparent Data Encryption) 。TDE用来对数据进行加密, 通常 SQL 执行的应用程序逻辑不需要进行更改, 就是说应用程序可以使用相同的语法将数据插入到应用程序表中, 并且 Oracle 数据库在将信息写入硬盘前对数据进行加密;②DUMP文件加密, 也就是在DUMP文件产生时针对DUMP文件进行加密, 这个依赖于Oracle中提供的导出命令expdp, 通过在导出时指定密钥, 恢复时人若无法提供密钥则直接恢复失败。

2 具体应用实践

2.1 数据级加密

首先刷新 sqlnet.ora 文件以包含ENCRYPTED_WALLET_LOCATION 条目。输入以下命令:

gedit sqlnet.ora

ENCRYPTION_WALLET_LOCATION= (SOURCE= (METHOD=FILE) (METHOD_DATA= (DIRECTORY=/opt/oracle/admin/test97/wallet/) ) )

/opt/oracle/admin/test97/wallet/ 目录用来存放生成的钱夹, 也可以为加密钱夹选择目录, 但不要指向在数据库安装时创建的标准钱夹所在位置 (cwallet.sso) 。

接下来打开新钱夹, 以Oracle用户登录操作系统, 从终端窗口中输入以下命令:

此命令的作用:①若加密钱夹不在指定目录, 将创建加密钱夹 (ewallet.p12) , 打开此钱夹并创建或重新创建 TDE 的万能密钥;②若指定目录中存在加密钱夹, 则打开此钱夹并创建或重新创建 TDE 的万能密钥。数据查看是明文, 因为此时加密钱夹已经打开, 数据可以解密为明文显示。

关闭加密钱夹, 此操作需要关闭数据库后再打开:

重启之后的数据库, 仍然处于关闭状态的加密钱夹, 只要查询到被加密的列, 就会收到加密钱夹尚未打开的提示。若用户仍试图打开钱夹, 必须具有alter system权限。

打开wallet操作:

加密钱夹打开后, 数据可以再次被查询出来。采用这种方式后, 即使其他人员收集到DUMP文件并完成相关数据恢复工作, 但只要没得到对应的密钥, 仍然无法获取用户数据, 这也为后续数据分析带来阻碍。

2.2 DUMP文件加密

目前, 许多企业在进行数据库备份时大都采用EXP/IMP工具。Oracle提供备份恢复命令EXPDP/IMPDP (数据泵) , 数据泵命令中有几个非常重要的选项, 如表1所示。

通过以上选项, 可以指定密钥口令和加密方式对于整个或部分转储文件进行加密, 加密后生成的DUMP文件在恢复时如没有提供对应的口令密钥, 会直接导致恢复失败。

以下是测试记录:

oracle@hlr1:/uds/scripts/manage> expdp bbb/bbb@Hlr directory=dpdata1 dumpfile=test.dmp tables=test encryption_password=123

Starting "BBB"."SYS_EXPORT_TABLE_01": bbb/******** dumpfile=test.dmp tables=test encryption_password=********

Estimate in progress using BLOCKS method

Processing object type TABLE_EXPORT/TABLE/TABLE_DATA

Total estimation using BLOCKS method: 64 KB

Processing object type TABLE_EXPORT/TABLE/TABLE

Master table "BBB"."SYS_EXPORT_TABLE_01" successfully loaded/unloaded

Dump file set for BBB.SYS_EXPORT_TABLE_01 is:/uds/test.dmp

Job "BBB"."SYS_EXPORT_TABLE_01" successfully completed at 13:33:12

示例中指定了密钥口令为123, 如果其它厂商的人员在不知道口令的情况下进行恢复, 会出现以下错误提示:

oracle@hlr1:/uds/scripts/manage>impdp BBB/BBB@hlr directory=dpdata1 dumpfile=test.dm

p 连接到: Oracle Database 11g Enterprise Edition Release 10.2.0.4.0 – Production

With the Partitioning, OLAP and Data Mining options

ORA-39002: 操作无效

ORA-39174: 必须提供加密口令

必须在impdp命令中指定encryption_password选项, 并且口令必须为123方能成功恢复。

操作时需要注意的是:首先, 想要正常使用expdp/impdp工具, 必须要在数据库中创建directory对象, 同时必须将访问该directory对象的权限赋予当前备份用户, 否则会出错;其次, 想要使用expdp/impdp工具中的encryption相关选项, 则数据库起始参数文件init.ora中关于compatible参数务必要设置为10.2.0.1.0或以上版本, 否则会报出“版本过低、无法支持该特性”的错误信息。

3 效果评价及选择

以上研究了两种物理转储数据保护方式, 其优缺点对比如下:

(1) TDE方式功能更加全面, 能够针对数据级进行加密, 恢复时若wallet钱包文件不存在也会导致恢复失败。相对而言, 数据泵方式仅在备份文件生成时能够指定密钥加密。

(2) TDE方式的使用依赖于TDE组件, 同时依赖于本地产生的wallet钱包文件, 如果该文件丢失则可能导致系统本身运行失败, 这对于商用局点的系统维护水平提出了新的要求。而数据泵方式仅在备份时使用, 即使失败也不会影响业务正常运行。

(3) TDE方式由于在数据写入时Oracle会进行加密动作, 数据查询时同样也需要进行解密动作, 对系统会有不小的负担, 在话务大的时段可能会造成性能下降。而数据泵方式仅在备份时生效, 更为安全。

(4) 数据泵方式实现起来更加简单, 仅需更改备份语句。而TDE方式涉及开局 (需要安装TDE组件) 、备份、恢复等多个步骤, 开发成本明显较高。

综上所述, 采用数据泵加密方式来实现对DUMP文件的保护工作, 在实现性、工程性、安全性、稳定性上等各方面都更胜一筹。

4结语

企业涉及业务越来越多, Oracle在各方面的应用也越来越广。很多系统每天都在使用着Oracle, 其作为保障灾难恢复的手段, 不应该成为信息安全的漏洞所在。为了更好地保护数据资料及知识产权, 应尽快采用安全有效的备份方式。

参考文献

[1]安亚强.Oracle备份与恢复及故障研究[J].内蒙古煤炭经济, 2009 (4) .

[2]白勇.数据级灾难备份技术的理论与实践[J].金融科技时代, 2012 (11) .

[3]王良莹.Oracle数据库容灾备份技术的研究与应用[J].福建电脑, 2010 (10) .

Oracle备份 第6篇

目前,医院基本上都建立了医院信息系统(HIS)。随着医院信息系统应用的普及和扩大,医院的各项工作越来越离不开计算机网络系统了,为了保障医院数据的完整性和安全性,必须定期备份,并有完备的灾难恢复方案,以便在数据库出现故障甚至崩溃的情况下,及时恢复断点,保持业务的持续性,保障医院各种数据的完整性。

2 利用任务计划建立每天定时备份的工作

2.1 建立备份的批处理

现运行的windows2000 server均有任务计划,此项功能是执行各种任务最好的选择,根据各医院情况不同,建立适应自己工作的批处理程序,以此来方便工作。定时执行所建立的批处理程序,来满足oracle数据库的日志备份和控制文件及未归档文件的备份要求。

2.2 定期做到全库安全备份

在医院管理信息系统中,全库备份是非常重要的,工程技术人员一定要把好全库备份这一关,定期备份,并且做到全库备份后要存放异地,记好日期,妥善保管,以便与后来的日志文件,控制文件,未归档文件做断点恢复时使用。

2.3 每日备份日志文件和oracle的控制文件及未归档文件

这些文件是建立在oracle数据库全库备份的基础之上的,没有很好的数据库全库备份,日志、控制、未归档文件不完整,就谈不上oracle数据库的断点恢复。

2.4 备份后的数据文件要有安全性

要保证文件的来源安全,以及文件存放地的安全。

3 断点恢复过程

如果出现都不想看到的情况,比如突然宕机,甚至崩溃,可以如下操作,快速恢复断点,恢复工作秩序。

3.1

在原服务器上DBA Studio中关闭数据库,然后运行svrm-grl,执行

3.2

拷贝以前的有效的数据库全库备份和最新的控制文件到备份服务器相应的子目录。

3.3

在原服务器上用system/口令进入SQLplus>下,执行

3.4

拷贝所有的归档日志文件到备份服务器相应的子目录。

3.5 在备份服务器上执行

如果成功,就能看到sqlplus逐条读入归档日志并写入数据库的画面。

3.6 在备份服务器上执行

说明:①种这种办法恢复的数据库是一致的不完全恢复,会丢失当前联机日志中的事务数据;②这种方法适合于归档数据库并且有可用的数据库全备份;③恢复成功之后,记得再做一次数据库的全备份。

3.7 在备用服务器上执行

3.8 完全备份备用服务器的数据库

至此,恢复工作完成。

由以上可以看出,控制文件和归档日志是恢复ORACLE的必要条件,所以,在oracle数据库全库备份完整的前提下,做好日志、控制、未归档文件的备份非常之重要,也是数据库恢复断点的根本。我们希望此文能抛砖引玉,让大家都积极献言献策,从安全稳定,简单易行的角度把数据库的管理工作做的更好。

参考文献

[1]余以胜.ORACLE数据库备份解决方案的研究.计算机与数字工程,2006.(01).

[2]冯遵委,刘伟成,赵鼎鼎,史百战.Oracle数据库备份和恢复的研究与应用.计算机时代,2006.(07).

Oracle备份 第7篇

关键词:.dbf数据文件,脱机备份,Oracle mount状态

一、前言

备份和恢复是两个互相联系的概念,备份就是将数据信息保存起来;而恢复则是当意外事件发生或者某种需要时,将已备份的数据信息还原到数据库系统中去。

备份分为物理备份和逻辑备份。其中,物理备份是拷贝数据库文件而不是其逻辑内容,物理备份又分为冷备份与热备份。

冷备份是在数据库保持关闭状态下,把数据库的物理文件复制到其他地方保存起来以备后用的过程。本文主要关注大型数据库Oracle的脱机备份及数据库出现故障后的恢复过程。

二、脱机备份特点

脱机备份又称为冷备份,是在数据库已经正常关闭后进行的备份。它直接备份数据库的相关文件,包括数据文件,控制文件等,适应于适用于数据库处于非归档模式下。冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份是将关键性文件拷贝到另外位置的一种说法。对于备份Oracle信息而言,冷备份较安全的方法。

冷备份的优点:

是非常快速的备份方法(只需拷贝文件);容易恢复到某个时间点上(只需将文件再拷贝回去);能与归档方法相结合,作数据库“最新状态”的恢复;低度维护,高度安全。

冷备份的不足:

单独使用时,只能提供到“某一时间点上”的恢复;在实施备份的全过程中,数据库必须要作备份而不能作其它工作。也就是说,在冷备份过程中,数据库必须是关闭状态;若磁盘空间有限,只能拷贝到磁带等其它外部存储设备上,速度会很慢;不能按表或按用户恢复。

冷备份中常拷贝的文件包括:1.所有数据文件2.所有控制文件3.所有联机REDO LOG文件4.初始化参数文件Init SID.ora文件5.本地口令验证文件PWDSID.ora。本文以数据文件按.dbf文件为例进行Oracle数据库的备份和恢复。

三、实施与实验验证

当数据文件出现介质故障时,利用之前已经拷贝的数据文件(.dbf文件),实现数据库的恢复。该恢复以在mount状态下恢复为主。具体步骤:

关闭数据库,备份已有的数据文件。

重新装载并打开数据库。对数据库进行操作,创建一张新表,插入一条记录。

重新关闭数据库,将其中的数据文件删除。

装载数据库,让数据库处于mount状态。打开数据库,此时系统会报错,说明已经丢失一个数据文件,并告知丢失的数据文件的号。

将已经转储的数据文件复制回Oracle。

进行数据文件恢复操作。重新打开数据库。

登陆Oracle,查询新增加的数据表,发现找回。原因是Oracle利用重做日志文件对上次备份后的数据更新进行自动恢复。

四、实验验证

4.1数据文件的备份

以sysdba身份登陆,关闭数据库,关闭后脱机备份已有数据文件c:101.dbf。注意:若没有该数据文件,请执行代码:create tablespace t1 datafile‘c:101.dbf’size 10m。

重新装载并打开数据库:以system身份登陆,创建新表:testtable1,并插入一条记录。

第二次关闭数据库,删除已经备份的数据文件’c:101.dbf’,通过Startup mount命令重新装载数据库,让数据库处于mount状态。通过alter database open,尝试打开数据库。发现出现错误,提示为无法锁定数据文件’c:101.dbf’。

4.2数据库恢复

通过Shutdown immediate再次关闭数据库。将备份的数据文件101.dbf拷贝到原始目录下,本例为c:。注意该数据文件备份的节点为创建测试表testtable1之前,即该数据文件中没有表testtable1的信息。如需要介质恢复,则通过命令recover datafile‘c:101.dbf’进行介质恢复,并验证数据库是否恢复正常。

发现物理备份的101.dbf中应该没有备份后故障前的信息,即测试表testtable1信息,但恢复后该信息依然在,这是后援副本+日志文件的力量。

四、总结

Oracle数据库的物理文件主要包括配置文件、数据文件、控制文件、重做日志文件和归档日志文件等,对于大型分布式数据库来说,隔一段时间的物理备份是必要的,本文研究了Oracle数据库的数据文件的备份和恢复,为提高数据库的容灾性能提供了保障。

参考文献

[1]王立君.并行多媒体数据库中基于内容的高效检索的数据分配方法的研究.[J]科学技术与工程,2013.13(9),2544-2548.

[2]郭晋秦,韩焱.大型数据库聚类中伪装危险数据识别方法研究.计算机仿真2015.433-436 32(11)

[3]徐洪丽,王志军.认知策略与知识结构化的研究与应用-以大型数据库学习为例.高教学刊.2016.3 73-74.

[4]李亚龙,朱岩.表分区在分界开关监控系统数据库的应用.2016(25)2:P235-237

Oracle备份 第8篇

关键词:Oracle,数据库,shell

1 引言

随着信息技术的不断发展,信息系统维护人员的维护工作量也越来越大,因此必须寻找一些严谨、有效的工作方法来缩减维护工作量,例如网络设备可以配置网管系统来进行网络监视;服务器可以利用监控软件来检查运行情况;数据库也可以通过一些监控手段来进行实时监控,那么小型机上的oracle数据库如何实现自动备份呢?可以利用unix平台提供的shell脚本来完成这一工作。

2 shell

shell的英文意思就是壳。其实shell它就是操作系统的一层外壳,是操作系统最外面的一层,与操作系统进行交流的接口。也可以称shell是一个命令语言解释器,它把用户的指令翻译给操作系统执行,进而完成一些操作任务。

shell分很多种类,各自的功能和侧重点都稍有差别,例如Bourne shell、C shell等等,但是它们目的都是一个,完成用户与系统间的交互。

而shell程序就是为了完成某个任务,按照一定逻辑和语法组合在一起的一组shell命令集。许多的日常系统维护工作就是通过shell和shell程序来完成的。

3 备份shell

为了能够方便的进行数据库备份,减轻重复劳动量,提供了一个shell程序来每天自动完成数据库的备份任务。

通过此shell程序,将实现以下目的:每天定时进行数据库备份;备份存放不同目录,一个目录存放每月1号的备份,另外一个目录保存最近指定天数的备份;为了避免让不断增加的备份文件占满磁盘空间,定期清理陈旧备份。

3.1 设置变量

在shell脚本的开始部分,定义一些变量:

sid标志备份数据的数据库实例名;bakdir标志备份shell程序和备份文件存放的主目录;lastbakdir标志存放最近20天备份的目录,即/orabak/last20daysbak/目录;monthbakdir标志存放每月首日备份文件的目录,即/orabak/monthbak/。

通过设置变量,可以使脚本的使用环境更加灵活,不同的数据库,不同的存放路径,只要通过修改变量的数据就可以实现了。这样就不必为每个应用系统都编写一个相近的shell程序了。

3.2 生成备份文件名

依照设定的备份频度,数据库每天进行一次备份,久而久之就会积累许多备份文件。为了避免因为文件过多混乱,数据库备份文件安排特定的命名方式,即备份日期加上数据库实例名。

首先,由于通过命令查询日期时,显示的月份是英文名称,长短不一而且不如数字显示月份看着直观,因此利用case语句,将英文的月份转换成了数字字符串。

通过date>/tmp/date.tmp把具体日期存放在一个临时文件中,然后执行下面的语句:

shell程序中的case用法与其他程序语言的swith-case(开关语句)用法非常接近,用途是一样的,只是写法上稍有差异而已。通过上面的开关语句,把每个月份都转换成了数字的显示方式。

接着,由于显示日期时,具体的日期要么显示的是两位的具体日期**日,要么是1位的*日,无法统一字符串长度,因此,需要在1位的日期前补一个0’,才能使每天的日期都是两位的字符串,如1日显示的是“01”,2日显示的是“02”,等等。下面是具体的转换代码:

通过上面的语句,可以保证所有的日期为**日,即两位字符串显示日期。

这样,利用下面的语句,再把年、月、日连接成一个字符串,就可以保证每天的备份文件名为“****年**月**日”加“数据库实例名”了。而且每个备份名长度相同,按照规范的方式显示,就可以方便对于备份文件的查看和管理了。

3.3 管理陈旧备份文件

通过shell程序管理数据库备份的目的就是为了减少重复工作量,如果每天都要登录服务器检查一次数据库的备份情况,看备份是否成功,看目录空间是否被占满等等,那么shell程序也就失去意义了。因此,需要利用shell来管理备份文件,限制备份文件的数量,定期清除陈旧的数据备份。

利用这个shell程序,控制备份文件存放在两个目录中,一个是“/orabak/last20daysbak/”,保存最近20天的备份。另一个是“/orabak/monthbak/”,保存最近12个月,每月1号的备份。下面就是控制、清理目录的代码示例。

第一个语句统计保存最近20天的备份目录里面存放的文件数。

第二个语句判断是否超过设定的阀值(根据系统以及文件系统的实际情况,设定的是20),如果超过了,那么检查目录中是否有本月1号的备份,如果有,那么拷贝到存放每月一号的目录/orabak/monthbak/;如果没有,那么对文件按日期排序,删除最早的备份。

以同样的方法,保证/orabak/monthbak/目录,最多只存放12个月每月1号的备份文件。

3.4 生成备份文件

生成备份文件应该是备份shell程序中最简单的一个环节了,因为前面已经生成好了文件名,并且对备份文件进行了全面的管理。

在这个shell程序中,只是简单的调用了Oracle的exp工具来对数据库数据进行逻辑导出,只需要把备份文件名和备份文件的存放目录指定清楚就可以了。

这样,全部脚本就完成了,从定制文件名到备份文件管理,再到生成备份文件。现在,距离完成全部工作只差一步之遥了,就是设置脚本的自动执行。

4 定时执行备份脚本

脚本完成后,首先需要通过命令“chmod+x shell程序文件名”来修改文件的属性,使文件具有可执行属性,这时就可以通过执行“./shell程序文件名”来测试程序的正确性了。如果程序没有问题,就可以进行最后的配置操作了。

在Unix系统中,设置自动执行shell程序,一般是通过编辑crontab文件来实现的。在命令提示符下,执行crontabe,就可以进行crontab文件的编辑了,编辑的方法与vi编辑器的用法类似。具体的格式如下:“分钟小时月日星期sh命令路径命令”。例如,定义的是每晚零点进行数据库备份:“00***sh/orabak/exp.sh”。

编辑完后,执行crontabl命令就可以检查crontab的文件内容了。也可以先设定一个距离当前时间较近的时间点,检查一下自动执行程序的情况,然后再修改成最终时间方案。

这样,全部的shell脚本程序编写过程就算结束了。这个shell脚本,从程序的角度来讲,在健壮性、程序优化等方面还存在很多问题。在这里,只介绍到了shell中if语句,switch-case语句等的用法,shell的语法还有很多,可以通过一些更加优化、恰当的写法使shell程序更加简洁、易读。

5 结论

本文通过一个简单的shell程序的编写过程介绍了shell程序的写法和用途,目前这个shell程序已经在多个应用系统上运行,为系统提供了可靠的数据保障,为日常维护工作也减少了很多的工作量。

学习使用shell对于维护系统有着重要的意义,目前许多单位都部署了各种各样的监管系统,但是大多数监管系统都是成形的产品,缺乏一定灵活性,并不能够很好的满足实际使用需要,有些更实际的功能还需要通过自行编写shell等程序来更好的完成系统监管任务。

Oracle备份 第9篇

1 Oracle数据库的介绍

Oracle数据库这种管理系统是一种关系型的数据库。Oracle数据库这种关系系统在运行中具有比较好的移植性, 在使用期间方便、快捷, 而且功能性也比较强, 它在各种微机环境下都能适用。 所以它对于数据库来说, 是一种可靠的、 效率比较高的、 适用性比较强的解决方案[1]。Oracle数据库具有一个完整的、系统的、处于世界地位水平之上的数据管理功能, 它在数据库管理功能中进行处理的方向上实现了分布式管理, 在进行更合理的运用和创造过程中, 就要进行系统的学习和研究, 从而掌握Oracle在各个机型中相关的技术知识。 Oracle数据库在功能管理中有很多特点, 这种完整性的数据管理系统在应用中能够将大量的数据合理的进行解决和处理, 实现数据的长期保存, 还能进行数据的实时共享, 从而保证数据在应用中的安全、可靠性。 Oracle这项技术的产生已经开始应用到各个领域, 特别对于一些计算机专业的毕业生具有较大的就业前景, 主要具有两方面的优势。 一方面, Oracle这项技术的就业面比较广, 这项技术应用在各个企业单位与相关政府机构, 在金融行业、电信行业以及政府中的发展更久远、发展的目标更强大。另一方面, 选择的职业方向也更多, 学好Oracle这项技术以及将它应用在对数据的管理方向上、对系统的开发方向上、对数据模型的建立方向上等。

2 Oracle数据库的备份模式

Oracle数据库在备份方式上主要有三种标准模式。 分别为脱机备份、联机备份以及逻辑备份。 脱机备份与联机备份这两种模式都属于物理备份, 它在进行分化过程中是通过数据库的工作模式来完成的。脱机备份也成冷备份, 它属于非归档模式的一种;而联机备份与之相反, 它又称热备份, 这是企业常用的一种备份方式, 通常使用RMAN备份工具, 制定备份策略, 定期备份, 属于归档模式的一种。 这两种模式在Oracle数据库的物理备份中同属于一种模式[2]。 这两种物理备份在数据库分析中只是针对文件进行的, 对一些逻辑主要内容并不考虑。对于逻辑备份来说, 这种备份方式是实现文件的形式拷贝, 是导入与导出两种备份模式的产生, 是文件进行读取与文件写入的两种方式, 由于它们所处的位置不同, 所以在读取与引入中产生的数据不同, 所以者三种备份方式在操作系统中比较重要。

2.1 脱机备份

脱机备份在操作系统中, 主要是通过拷贝技术来进行的, 如果数据库出现关闭期间, 都可以将数据库中的所有数据进行复制, 从而保障因故障产生丢失数据的现象。这种拷贝技术还可以还原数据库中的文件, 从而保障文件在运行中的稳定状态。 数据库中的这些文件也可以进行全部备份, 特别是数据库中的所有文件、控制文件、数据库在运行中的日志文件[3]。但脱机备份在备份期间要注意到, 必须将数据库关闭才能进行备份, 如果没有关机就进行备份, 执行的数据库文件就不能有效的实现备份。具体的脱机备份方式在操作过程中必须要在系统能够提供的服务管理器下运行, 首先要关闭正常的备份, 然后将整个数据库备份到一个目录或文件夹中, 最后启动数据库。 实现的脱机备份方式速度比较快, 归档的方式也比较方便, 但在备份期间, 数据库只能进行备份, 并不能实现其他的数据库任务。

2.2 联机备份

联机备份是在没有用户对数据库进行访问时进行备份的, 它是一种不一致备份方式, 是在数据库文件与控制文件读取期间进行的不一致备份。 因为有些数据库在运行中是不能进行关机的, 在这种情况下要进行数据的备份模式, 就要对数据文件进行不一致的者表空间。 联机备份在形成方式上主要有完全备份与增量备份, 对于完全备份来说, 它是一种集中备份的数据模式, 但不包括那些不常使用的数据。如果在归档期间进行备份时, 日志文件与控制文件发生重做现象, 这期间数据库服务器就会备份所有的文件。 对于增量备份来说, 它只对已经被修改的文件进行备份。联机备份在数据文件与空间上进行备份实现的速度比较快, 用户不需要关机就能执行备份。 但联机备份在进行期间, 要实现良好的备份表空间状态, 就要将原来的状态实施恢复, 从而保障数据库再进行启动时免受覆盖的现象。

2.3 逻辑备份

逻辑备份主要是导入与导出两种数据库模式。对于数据库的导出来说, Oracle中的程序用来读取和输出的, 它可以将数据库中保存的信息导出到指定的位置。 逻辑备份在操作方式中主要有三种情况, 一种在导出中要对指定的表进行备份, 一种在导出中利用全库方式对所有的对象进行备份, 另外一种在导出中将用户要指定的所有数据进行备份。 在导入数据库过程中, 由于它是一种逆过程所以要先将导出文件进行读取, 然后才能恢复数据库[5]。

3 Oracle数据库的备份研究

3.1 管理好备份中所需要的储存介质

为了防止原有的备份数据库丢失, 在备份期间就要管理好所需要的储存介质, 可以将备份中的主要内容、日期以及介质的编号进行整理和分类, 以免在恢复时弄错介质。对需要的储存介质进行备份, 为了避免在实际工作中出现损害的现象, 最好备份两份以上, 如果发生这种数据丢失现象还可以利用另一份将数据库进行恢复。已经备份好的储存介质还要与计算机设备放在不同的地方, 以防止因意外事故发生影响计算机损坏。

3.2 设置好数据库的归档模式

当数据库在Non Archive Log模式运行期间, 要实现一致性的数据库备份方式, 在备份期间一定要先关闭, 不能运用联机中对日志的存档进行重作, 在数据库恢复的时候只能恢复到最近的一次备份点, 以免在Oracle数据库失败期间还可以将最近的数据库进行备份。当数据库在Archive Log模式运行期间, 不仅要对数据库实现一致性备份, 还要对数据库的打开情况进行备份, 这种情况下要运用联机备份方式。这种备份数据库的联机方式、日志文件的存档重作方式, 不仅能使用户在提交上恢复了所有的数据, 保证日志在时间与系列号处的恢复和整理, 而且利用归档模式下的有效备份, 可以将数据库恢复到某一个时间点, 还使数据在恢复中增加了灵活效果, 防止故障发生期间导致数据的丢失现象[6]。

3.3 备份多个控制文件

根据数据库控制文件的多元化, 在Oracle数据库备份与恢复过程中, 要实现控制文件的多个备份方式, 主要表现在两个方面。 一方面, 对多个控制文件进行备份主要利用在不同的物理磁盘上, 因为控制文件在数据库备份方式上, 主要是运用Oracle数据库来引导的, 所以实现多个控制文件的备份方式, 不仅能够使物理磁盘在发生故障期间得到有效的保障, 还能使其他的控制文件在运营上实现数据库的恢复处理。 另一方面, 进行定期的联机备份操作, 主要对备份的数据库文件、控制文件以及归档日志文件。在备份对数据库文件期间, 备份的频率、恢复数据的时间具有明显的差异, 如果数据库文件在备份时发生的频率比较高, 在恢复数据库过程时, 日志信息改变的也就越少, 所恢复的时间也就越短。

4 Oracle数据库的恢复

数据库在恢复中的实现技术, 它在恢复过程中。首先, 将数据库恢复到原有备份状态上, 然后, 根据已经备份好的数据, 在日志事物中进行归档和重做, 从而使副本文件更新到失败之前的数据库状态。 恢复数据库这种方法的利用主要分析存在的问题, 本文从实例恢复与介质恢复两种方式[7]上进行阐述。

4.1 实例和崩溃恢复

对于实例故障的恢复来说, 它经常出现的故障现象是由于电源问题导致的服务器不可用现象、由于CPU出现的故障问题、由于内在故障问题以及Oracle数据库在后台运行中出现的故障问题。这种恢复方式为了使数据库更准确、一致, 不仅可以将所有数据输入到数据文件中, 还可以将所有没有提及到的数据以及事物回退掉, 在进行实例恢复期间, 整个过程都是利用Oracle系统来完成的, 它改变了人力在数据库上的执行操作, 实现了自动化的系统模式。 进行实例和崩溃恢复的主要目的, 主要将失败的实例实现缓存、重做线程, 它在已经记录的、关闭的信息中来实现的。这种方式在运行中是一种自动化、重做信息的接受方式, 如果Oracle系统在内部中出现实例和崩溃故障, 它能够实现自动数据的恢复, 而不需要人为来实施操作。

4.2 介质恢复

介质恢复这种操作方式是Oracle数据库在使用管理中常见的, 这种形式主要是数据文件的介质恢复与块介质恢复[8]。对于数据文件的介质恢复来说, 它主要对发生损坏与丢失期间的数据进行恢复, 也能对不使用Offline Normal选项离线进行恢复。 在一般情况下, 由于实例恢复与介质恢复在数据文件中能够保证数据库的完整性, 所以对数据文件进行介质恢复期间, 不仅需要还原以前的受损文件、使用归档和在线进行重作日志, 还需要利用人工直接干预、需要将数据库中的错误介质自动启动以及将Oracle系统内部中的控制进行恢复等。对于块介质恢复来说, 由于它是运用RMAN进行的一种独特介质恢复系统。当数据库处于可用在线期间就要还原数据块;如果数据文件中部分数据块处于限制、损坏状态, 就要进行故障解决。

随着系统化技术的不断发展变化, 数据信息的安全性越来越重要, 要提高数据信息的安全保障。 就要对Oracle数据库的备份及恢复理论进行有效的学习, 意识到数据的重要性, 根据实际的数据运行情况, 从而找出相关方式进行解决。

摘要:Oracle数据库系统在业务数量上比较大、对数据的储存空间也比较大, 它是一种系统性的数据库系统。它在运行上可以进行多种平台的操作方式, 目前在我国应用于各个领域。如果要使数据库能够安全、稳定的运行, 在数据应用范围上就要注意到, 对数据的管理工作要进行实时的备份工作和恢复工作。文中, 介绍了Oracle数据库的含义, 阐述了Oracle数据库在备份工作于恢复工作中的重要模式, 不断进行讨论和分析。不仅避免了数据信息的丢失现象, 也保证了数据库技术在信息时代中的建设地位。

关键词:Oracle数据库,备份与恢复,理论基础

参考文献

[1]黄奕华.Oracle数据库的备份及恢复技术的研究与应用[J].办公自动化, 2015, 04:32-35.

Oracle备份

Oracle备份(精选9篇)Oracle备份 第1篇不管数据库如何精心设计、配置和优化,它们都难免会出现系统或硬件故障,如:语句故障、用户进程故障...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部