当前位置:文档之家› Oracle备份恢复方案

Oracle备份恢复方案

Oracle 备份恢复方案

第一章基础知识

一、备份内容:

备份数据库一般包括备份数据库文件、控制文件、归档重做日志文件和INIT.OTRA文件,如果有可能,备份还应包括可执行代码和配置文件。

二、备份方法分类:

主要的备份方法有物理备份、逻辑备份和恢复管理器(RMAN)备份。

1.物理备份是实际物理数据库文件从一处拷贝到另一处的备份,它使用操作系统提供的拷贝命令来完成,包括操作系统备份(NT下一般不用)、冷备份和热备份;

2.逻辑备份是利用SQL从数据库中抽取数据并存入二进制文件,这些数据可以重新导入原来的数据库,或者以后导入其它数据库,ORACLE提供的EXPORT/IMPORT工具可用于进行数据库的导入和导出。

3.恢复管理器RMAN(Recovery Manager)为Oracle 8新引入,能够完成数据库的备份与恢复任务,既可以在图形用户界面GUI中使用,也可以在CLI (命令行)中使用。

三种方法各有长短,DBA应该综合灵活运用。

第二章物理备份和恢复

一、冷备份步骤如下:

1、关闭数据库实例:

命令行下关闭数据库有三种方式:normal,immediate,和abort,对于备份而言,immediate方式最好,因为这种方式既避免了normal方式下因用户忘记退出而造成的等待,且因为Oracle进行了回滚和检查点操作,可以保证数据库的一致和完整性。

推荐在控制面板的服务窗口下关闭专用服务,可以彻底的关闭数据库,这里的数据库服务名为OracleServiceZZYD。

2、拷贝所有与数据库相关的物理文件:包括控制文件、重做日志文件和数据库文件,这里拷贝目录E:\ZZYD即可,另外最好把监听器配置文件

(d:\orace\ora81\network\admin\目录下的listener.ora和tnsnames.ora)也拷贝下来。

3、完成拷贝后重新启动数据库。

二、热备份步骤:

热备份是一个复杂的过程,这是因为每个表空间都是一个完整的备份过程。具体步骤如下:

1、将某个表空间设置为备份模式:

alter tablespace YD_DATA bigin backup;

2、拷贝与表空间相关的所有数据库文件;

3、取消该表空间的备份模式:

alter tablespace YD_DATA end backup;

4、重复步骤1到3,直到所有的表空间都备份完毕;

5、拷贝控制文件;

6、拷贝联机重做日志。

三、恢复实例

假设由于系统瘫痪而重新安装了操作系统,那么安装Oracle软件之后不需要重新生成数据库即可实现原来数据的恢复,步骤如下:

1、把备份的内容拷贝到原来的目录下;

2、在命令行下重新创建和启动实例:

C:\>oradim -new -sid ZZYD -intpwd oracle -startmode auto -pfile e:\zzyd\pfile\init.ora

3、检查控制面板下的服务项已经起来;

4、配置网络或使用备份的listener.ora和tnsnames.ora文件重新启动监听器(注意:如果用Net8 Easy Config配置网络,一定要在文件listener.ora里加入相应的内容

(SID_DESC =

(GLOBAL_DBNAME = zzyd)

(ORACLE_HOME = d:\Oracle\Ora81)

(SID_NAME = ZZYD)

)

否则,智能代理将无法检测到该实例,便不能用OEM进行管理)

5、用其他方法对冷备份以来的数据库操作进行恢复。

如果是由于某种误操作导致数据库不能正常使用的情况,则恢复时先关闭数据库,再把e:\zzyd的备份替换现在的目录,再重启数据库即可。

第三章逻辑备份和恢复

一、注意事项:逻辑备份(导出/导入)相对来说较为简单,需注意的事项有

1、导出一致性,可有两种方法实现:

1)在导出过程中使用户不能连到数据库:

svrmgr> alter system enable restricted session

或暂时停止监听服务

2)导出时设置CONSISTENT=Y,导出过程中用户可以使用数据库,但速度较慢。

2、导出和导入时注册表中的HKEY_LOCAL_MACHINE/SOFTWHERE/ ORACLE/HOME0/NLS_LANG语言设置要相同,否则会因字符集转换错误而不能进行导入。

二、导出

导出工作于三种模式,但同时只能使用一种,否则会提示有冲突:

用户模式OWNER=ownerlist

表模式TABLES=tablelist

完全数据库模式FULL=Y

下面是电业局用电MIS服务器用到的两个导出命令行:

exp system/manager@zzyd OWNER=dbo file=f:\backup\zzyd_data.dmp consistent=y log=f:\backlog\dmpzzyddata.log

exp system/manager@zzyd file=f:\backup\zzyd_sys.dmp consistent=y log=f:\backlog\dmpzzydsys.log TABLES=(PBCATCOL,PBCATEDT, PBCATFMT,PBCATTBL,PBCATVLD)

我们把导出写成了批处理文件(c:\bakscript\expzzyd.bat),导出日志(f:\backlog\dmpzzyddata.log和f:\backlog\dmpzzydsys.log)记录了导出的整个过

程。

注:两次同样的导出,第二次会把第一次的到处文件覆盖,而用RMAN不会有同样的问题。

三、导入

导入与导出是互逆的,对应也有三种模式。它可以在ASCII码和EBCDIC 码之间进行转换,以实现数据能在不同平台之间进行移动。值得注意的是,当原来的表空间已经充满数据时,这是导入会引起数据冲突,解决办法时重建空的表空间。下面是郑州电业局用电MIS服务器:

imp system/manager@yd file=f:\dmpyd\system0727.dmp log=f:\dmpyd\impsys.log ignore=y commit=y full=y

imp dbo/dbo1021@yd file=f:\dmpyd\yd_data0727.dmp log=f:\dmpyd\impdata.log ignore=y commit=y full=y

第四章恢复管理器RMAN

一、RECOVERY MANAGER简介:

1、RECOVERY MANAGER为ORACLE 8新引进。既可以在图形用户界面GUI中使用,也可以在CLI(命令行)中使用,虽然在GUI中更加直观和容易理解,但在CLI中更加灵活和可靠,建议用户使用CLI进行备份和恢复操作。

2、RMAN能够建立除逻辑备份(EXPORT)以外的所有类型的备份,具体包括:数据库备份(完全备份和增量备份)、表空间备份、数据文件备份、控制文件备份和归档日志备份。

3、RMAN工作时要使用恢复目录(RECOVERY CATALOG),备份操作信息被自动登记到RECOVERY CATALOG中,数据库进行恢复时要使用这些信息。恢复目录需使用专用的数据库,如果恢复目录建立在要进行备份的数据库中,则一旦该数据库出现故障,恢复目录就不能使用,恢复工作也就无法完成。

4、一般为区别起见,完整备份和增量备份采用不同的CHANNEL,恢复时先利用完整备份ALLOCAT CHANNEL,然后RESTORE DATABASE;再顺次利用各个增量备份ALLOCATE他们的CHANNEL,然后RESTORE DATABASE;

都完成后,进行一次RECOVER DATABASE。

5、RECVOERY CATALOG 支持三种备份:备份集、数据文件拷贝(也成为快照拷贝)和操作系统备份。备份集用BACKUP命令创建,快照拷贝使用RECOVERY MANAGER的COPY命令创建,这两种备份操作都自动登记到恢复目录中,操作系统备份要使用RECOVERY MANAGER的CATALOG命令登记到恢复目录中。

二、DBMS_BACKUP_RESTORE PACKAGE

此程序包为备份/恢复所必须使用的,DBMSBKRS.SQL脚本创建;正常情况下,已被CATPROC.SQL脚本调用过。若不存在,会出现ORA-406错误。

三、RMAN的配置:

1、利用数据库创建助手(如ORACLE DATABASE ASSISTANT)创建一个专用数据库RCV:这个数据库用来存储RMAN的有关操作信息,在进行数据库恢复时要用到这些信息:

SVRMGR> connect internal/oracle@rcv

连接成功。

2、创建RMAN用户:

SVRMGR> create tablespace rcvdata

2> datafile

3> 'd:\Oracle\Oradata\rcv\rcvdata.dbf' size 50M;

语句已处理。

SVRMGR> create tablespace rcvtemp

2> datafile

3> 'd:\Oracle\Oradata\rcv\rcvtemp.dbf' size 20M;

语句已处理。

SVRMGR> create user rman identified by rman

2> temporary tablespace rcvtemp

3> default tablespace rcvdata

4> quota unlimited on rcvdata;

语句已处理。

SVRMGR> grant recovery_catalog_owner to rman;

语句已处理。

SVRMGR> grant connect,resource to rman;

语句已处理。

SVRMGR>

3、修改注册表HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOME0目录下的NLS_LANG项为America_America.ZHS16CGB231280(修改注册表后,显示变为英文,如不修改,以后数据库的恢复工作将难以进行)

4、把ZZYD的初始化文件INIT.ORA作如下修改并重新启动该数据库:

#mts_dispatchers = "(protocol=TCP)(DISP=1)(mul=OFF)(pool=OFF)"

#mts_max_dispatchers = 5

#mts_servers = 1

#mts_max_servers = 20

5、启动RMAN,提示没有安装恢复目录

SVRMGR> exit

Server Manager complete.

C:\>rman catalog rman/rman@rcv

Recovery Manager: Release 8.1.5.0.0 - Production

RMAN-06008: connected to recovery catalog database

RMAN-06428: recovery catalog is not installed

6、创建恢复目录

RMAN> create catalog tablespace rcvdata;

RMAN-06431: recovery catalog created

7、重新连接目标数据库和恢复目录数据库并进行注册:

RMAN> exit

Recovery Manager complete.

C:\>rman target internal/oracle@zzyd catalog rman/rman@rcv

Recovery Manager: Release 8.1.5.0.0 - Production

RMAN-06005: connected to target database: ZZYD (DBID=4191796885)

RMAN-06008: connected to recovery catalog database

RMAN> register database;

RMAN-03022: compiling command: register

RMAN-03023: executing command: register

RMAN-08006: database registered in recovery catalog

RMAN-03023: executing command: full resync

RMAN-08029: snapshot controlfile name set to default value: %ORACLE_HOME%\DATABA

SE\SNCF%ORACLE_SID%.ORA

RMAN-08002: starting full resync of recovery catalog

RMAN-08004: full resync complete

RMAN>

8、检验RMAN已经可以使用。

注:一个数据库只能被注册一次,如果恢复目录创建失败或注册失败,应该先把现在的恢复目录删除,然后重新创建和注册,删除方法如下:RMAN> drop catalog;

RMAN-06435: recovery catalog owner is rman

RMAN-06436: enter DROP CATALOG command again to confirm catalog removal

RMAN> drop catalog;

RMAN-06432: recovery catalog dropped

四、使用RMAN备份实例:

做完了RMAN的配置工作,以后就可以使用它进行数据库的备份和恢复了,在命令行下执行如下命令:

C:\>rman target internal/oracle@zzyd catalog rman/rman@rcv

Recovery Manager: Release 8.1.5.0.0 - Production

RMAN-06005: connected to target database: ZZYD (DBID=4191796885)

RMAN-06008: connected to recovery catalog database

RMAN>

然后直接输入命令行或调用事先写好的备份脚本就可以进行工作了。这里为了方便用户,我们写了如下备份脚本和脚本调用批处理文件,并对程序运行结果

做了完整记录,具体介绍如下:

1、数据库的完全备份

备份脚本:c:\backupscript\bakdbfull.txt

脚本调用批处理文件:c:\ backupscript \bakdbfull.bat 执行结果记录文件:f:\backlog\bakdbfull.log

2、数据零级增量备份:

备份脚本:c:\ backupscript \bakinc0.txt

脚本调用批处理文件:c:\ backupscript \bakinc0.bat

执行结果记录文件:f:\backlog\bakinc0.log

3、数据库一级增量备份:

备份脚本:c:\ backupscript \bakinc1.txt

脚本调用批处理文件:c:\ backupscript \bakinc1.bat

执行结果记录文件:f:\ backlog \bakinc1.log

4、数据库二级增量备份:

备份脚本:c:\ backupscript \bakinc2.txt

脚本调用批处理文件:c:\ backupscript \bakinc2.bat

执行结果记录文件:f:\backlog\bakinc2.log

5、控制文件的备份:

备份脚本:c:\ backupscript \contr.txt

脚本调用批处理文件:c:\ backupscript \ contr.bat

执行结果记录文件:f:\backlog\ contr.log

6、归档日志的备份:

备份脚本:c:\ backupscript \ bakarchall.txt

脚本调用批处理文件:c:\ backupscript \bakarchall.bat 执行结果记录文件:f:\backlog\ bakarchall.log

7、表空间的备份(这里以表空间YD_DATA为例):

备份脚本:c:\ backupscript \ tbs.txt

脚本调用批处理文件:c:\ backupscript \baktbs.bat

执行结果记录文件:f:\backlog\ tbs.log

8、数据文件的备份(这里以表空间YD_DATA的6个数据文件为例):

备份脚本:c:\ backupscript \ datafile.txt

脚本调用批处理文件:c:\ backupscript \datafile.bat

执行结果记录文件:f:\backlog\ datafile.log

9、在线重做日志及过去一天归档日志的备份:

备份脚本:c:\ backupscript \ onlinelog.txt

脚本调用批处理文件:c:\ backupscript \onlinelog.bat

执行结果记录文件:f:\backlog\ onlinelog.log

五、使用RMAN进行数据库恢复实例:

实例1:系统表丢失的恢复验证过程:

1、模拟丢失系统表文件。

1)把目标数据库SHUTDOWN:

C:\>svrmgrl

Oracle Server Manager Release 3.1.5.0.0 - Production

(c) Copyright 1997, Oracle Corporation. All Rights Reserved.

Oracle8i Release 8.1.5.0.0 - Production

With the Java option

PL/SQL Release 8.1.5.0.0 - Production

SVRMGR> connect internal/oracle@zzyd;

Connected.

SVRMGR> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SVRMGR>

2)把目标数据库的系统表数据文件E:\ZZYD\SYSTEM01.DBF重命名为:SSYSTEM01.DBF;

3)重新启动目标数据库时,数据库不再能打开,出现如下信息:

SVRMGR> startup pfile=e:\zzyd\pfile\init.ora;

ORACLE instance started.

Total System Global Area 468557772 bytes

Fixed Size 65484 bytes

Variable Size 450641920 bytes

Database Buffers 17776640 bytes

Redo Buffers 73728 bytes

Database mounted.

ORA-01157: cannot identify/lock data file 1 - see DBWR trace file

ORA-01110: data file 1: 'E:\ZZYD\SYSTEM01.DBF'

SVRMGR>

2、利用RMAN进行恢复

这时可以发现,系统指出数据库因系统文件丢失错误而无法打开,下面根据做过的数据库备份进行恢复:

1)打开恢复管理器:

SVRMGR> exit;

Server Manager complete.

C:\>rman target internal/oracle@zzyd catalog rman/rman@rcv

Recovery Manager: Release 8.1.5.0.0 - Production

RMAN-06005: connected to target database: ZZYD (DBID=4191048776)

RMAN-06008: connected to recovery catalog database

RMAN>

2)运行系统表恢复脚本文件:

RMAN> @c:\backup\rec.txt

RMAN> run{

2> allocate channel dev1 type disk;

3> restore tablespace system;

4> recover tablespace system;

5> alter database open;

6> release channel dev1;

7> }

RMAN-03022: compiling command: allocate

RMAN-03023: executing command: allocate

RMAN-08030: allocated channel: dev1

RMAN-08500: channel dev1: sid=10 devtype=DISK

RMAN-03022: compiling command: restore

RMAN-03022: compiling command: IRESTORE

RMAN-03023: executing command: IRESTORE

RMAN-08016: channel dev1: starting datafile backupset restore

RMAN-08502: set_count=34 set_stamp=403871091 creation_time=25-JUL-00 RMAN-08089: channel dev1: specifying datafile(s) to restore from backup set RMAN-08523: restoring datafile 00001 to E:\ZZYD\SYSTEM01.DBF

RMAN-08089: channel dev1: specifying datafile(s) to restore from backup set RMAN-08523: restoring datafile 00001 to E:\ZZYD\SYSTEM01.DBF

RMAN-08023: channel dev1: restored backup piece 1

RMAN-08511: piece handle=F:\BACKUP\INC_LEVEL0_T% params=NULL RMAN-08024: channel dev1: restore complete

RMAN-03023: executing command: partial resync

RMAN-08003: starting partial resync of recovery catalog

RMAN-08005: partial resync complete

RMAN-03022: compiling command: recover

RMAN-03022: compiling command: recover(1)

RMAN-03022: compiling command: recover(2)

RMAN-03022: compiling command: recover(3)

RMAN-03023: executing command: recover(3)

RMAN-08054: starting media recovery

RMAN-08515: archivelog filename=E:\ZZYD\ARCHIVE\ZZYDARC00858.001 thread=1 sequen ce=858

RMAN-08515: archivelog filename=E:\ZZYD\ARCHIVE\ZZYDARC00859.001 thread=1 sequen ce=859

RMAN-08515: archivelog filename=E:\ZZYD\ARCHIVE\ZZYDARC00860.001 thread=1 sequen ce=860

RMAN-08055: media recovery complete

RMAN-03022: compiling command: recover(4)

RMAN-03022: compiling command: alter db

RMAN-06400: database opened

RMAN-03022: compiling command: release

RMAN-03023: executing command: release

RMAN-08031: released channel: dev1

RMAN> **end-of-file**

RMAN>

3)检查E:\ZZYD\SYSTEM01.DBF已经恢复,数据库运行正常。

实例2:不包括回滚段的数据文件丢失后的恢复验证过程:

1、把目标数据库SHUTDOWN:

C:\>svrmgrl

Oracle Server Manager Release 3.1.5.0.0 - Production

(c) Copyright 1997, Oracle Corporation. All Rights Reserved.

Oracle8i Release 8.1.5.0.0 - Production

With the Java option

PL/SQL Release 8.1.5.0.0 - Production

SVRMGR> connect internal/oracle@zzyd;

Connected.

SVRMGR> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SVRMGR>

2、模拟丢失数据文件:

数据文件E:\ZZYD\YDDATA\DATA01.DBF重命名为:E:\ZZYD\YDDATA\DDATA01.DBF,

数据文件E:\ZZYD\YDDATA\DATA02.DBF重命名为:E:\ZZYD\YDDATA\DDATA02.DBF;

3、重新启动目标数据库时,数据库不再能打开,出现如下信息:

SVRMGR> startup pfile=e:\zzyd\pfile\init.ora;

ORACLE instance started.

Total System Global Area 468557772 bytes

Fixed Size 65484 bytes

Variable Size 450641920 bytes

Database Buffers 17776640 bytes

Redo Buffers 73728 bytes

Database mounted.

ORA-01157: cannot identify/lock data file 7 - see DBWR trace file

ORA-01110: data file 7: 'E:\ZZYD\YDDATA\DATA01.DBF'

SVRMGR>

4、打开恢复管理器:

SVRMGR> exit;

Server Manager complete.

C:\>rman target internal/oracle@zzyd catalog rman/rman@rcv

Recovery Manager: Release 8.1.5.0.0 - Production

RMAN-06005: connected to target database: ZZYD (DBID=4191048776)

RMAN-06008: connected to recovery catalog database

RMAN>

5、首先试着直接恢复表空间yd_data

RMAN> run{

2> recover tablespace yd_data;

3> }

RMAN-03022: compiling command: recover

RMAN-03022: compiling command: recover(1)

RMAN-03022: compiling command: recover(2)

RMAN-03026: error recovery releasing channel resources

RMAN-00571:

=========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571:

=========================================================== RMAN-03002: failure during compilation of command

RMAN-03013: command type: recover

RMAN-03002: failure during compilation of command

RMAN-03013: command type: recover(2)

RMAN-06094: datafile 7 must be restored

RMAN>

6、由此可见,在恢复表空间前必须先恢复数据文件,重复2、3、4步骤,然后运行恢复脚本文件:

RMAN> @c:\mydoc\recdat.txt

RMAN>

RMAN> run{

2> allocate channel dev1 type disk;

3> restore datafile 7;

4> restore datafile 8; 注:1

5> recover tablespace yd_data;

6> alter database open;

7> sql'alter tablespace yd_data online';

8> release channel dev1;

9> }

RMAN-03022: compiling command: allocate

RMAN-03023: executing command: allocate

RMAN-08030: allocated channel: dev1

RMAN-08500: channel dev1: sid=10 devtype=DISK

RMAN-03022: compiling command: restore

RMAN-03022: compiling command: IRESTORE

RMAN-03023: executing command: IRESTORE

RMAN-08016: channel dev1: starting datafile backupset restore

RMAN-08502: set_count=37 set_stamp=403884136 creation_time=25-JUL-00 RMAN-08089: channel dev1: specifying datafile(s) to restore from backup set RMAN-08523: restoring datafile 00007 to E:\ZZYD\YDDATA\DATA01.DBF RMAN-08023: channel dev1: restored backup piece 1

RMAN-08511: piece handle=F:\BACKUP\INCTAB_LEVEL0_T% params=NULL

RMAN-08024: channel dev1: restore complete

RMAN-03023: executing command: partial resync

RMAN-08003: starting partial resync of recovery catalog

RMAN-08005: partial resync complete

RMAN-03022: compiling command: restore

RMAN-03022: compiling command: IRESTORE

RMAN-03023: executing command: IRESTORE

RMAN-08016: channel dev1: starting datafile backupset restore

RMAN-08502: set_count=37 set_stamp=403884136 creation_time=25-JUL-00 RMAN-08089: channel dev1: specifying datafile(s) to restore from backup set RMAN-08523: restoring datafile 00008 to E:\ZZYD\YDDATA\DATA02.DBF RMAN-08023: channel dev1: restored backup piece 1

RMAN-08511: piece handle=F:\BACKUP\INCTAB_LEVEL0_T% params=NULL

RMAN-08024: channel dev1: restore complete

RMAN-03023: executing command: partial resync

RMAN-08003: starting partial resync of recovery catalog

RMAN-08005: partial resync complete

RMAN-03022: compiling command: recover

RMAN-03022: compiling command: recover(1)

RMAN-03022: compiling command: recover(2)

RMAN-03022: compiling command: recover(3)

RMAN-03023: executing command: recover(3)

RMAN-08054: starting media recovery

RMAN-08515: archivelog filename=E:\ZZYD\ARCHIVE\ZZYDARC00860.001 thread=1 sequen ce=860

RMAN-08055: media recovery complete

RMAN-03022: compiling command: recover(4)

RMAN-03022: compiling command: alter db

RMAN-06400: database opened

RMAN-03022: compiling command: sql

RMAN-06162: sql statement: alter tablespace yd_data online

RMAN-03023: executing command: sql

RMAN-03022: compiling command: release

RMAN-03023: executing command: release

RMAN-08031: released channel: dev1

RMAN> **end-of-file**

RMAN>

7、检验两个数据文件都已经恢复。

注:虽然系统只显示错误:

ORA-01157: cannot identify/lock data file 7 - see DBWR trace file

ORA-01110: data file 7: 'E:\ZZYD\YDDATA\DATA01.DBF'

但是,若不在恢复脚本中加进:restore datafile 8;

那么在恢复进行过程中,会提示错误:datafile 8 must be restored,这是可以单独执行针对datafile 8的恢复。

第五章备份工作的自动化

一、AT介绍:

AT是一个NT操作系统的任务定时执行程序,经过测试,只对批处理文件有效,具体情况可以查看NT的帮助。通过AT把备份任务添加到操作系统的任务表里自动完成,可以减少日常的备份任务,DBA只需要检查备份完成的记录即可。

二、AT添加批处理文件:

C:\backupscript\job.bat

第六章备份规划

一、配置要求

服务器端:

运行英文NT4.0(SP5)操作系统

数据库运行在ARCHIVELOG模式下;

保留独立的归档日志文件保存空间大于3GB;

保留独立的备份目的空间大于2GB;

运行ORACLE INTELLIGENTAGENT;

管理工作站:

运行中文NT4.0(SP5)操作系统;

配置磁带机、数据磁带、清洗带;

创建一个用于保存恢复目录的小型数据库RCV;

安装Oracle Enterprise Manager;

二、例行备份时间表:

三、日常维护任务:

(1)建立严格的维护记录制度,记录对数据库维护的每一步操作、时间及返回信息;

(2)检查归档日志空间占用情况:e:\zzyd\archive\目录下,每次把完全备份导入到磁带机后就把完全备份之前的归档日志文件删除(注意归档日志文件的日期和时间);

(3)检查备份完成情况,备份文件目录:f:\backup\,备份日志目录:f:\backlog\;(4)检查表空间使用情况,预计增长速度,提前扩大容量。可以通过OEM下的\tools\Database applications\ Storage manger查看表空间及数据文件的占用情况并为表空间增加数据文件;

(5)周期性同步数据库信息(rman>resync catalog)到RECOVERY CATALOG 中;

(6)如果更改了数据库的配置(如增加/删除/更名数据文件等等),要立即进行备份,数据库变更操作要尽量安排在休息日进行。

(7)在变更了服务器的时钟后,必须立即进行完全数据库备份!(不要轻易改变服务器时间);

(8)口令文件、控制文件、初始化文件单独COPY出来;

口令文件:D:\Oracle\Ora81\下PWDzzyd.ORA、rcv.ORA;

控制文件:E:\zzyd\CONTROL01.CTL和CONTROL02CTL;

初始化文件:E:\zzyd\pfile\init.ora;

(9)在纸上记录各备份通道的定义、格式信息;

第七章常见故障解决

1.internal帐户和密码丢失:表现为无法用internal帐户连接到数据库。

原因1:忘记密码

解决办法:

1)用备份的口令文件替换旧的口令文件D:\Oracle\Ora81\下PWDzzyd.ORA

2)重新生成新的口令文件,在生成之前一定要先删除旧口令文件

命令:D:\> ORAPWD file=D:\Oracle\Ora81\Database\PWDzzyd.ORA password= entries=5

原因2:数据库损坏

考虑是否需要重新恢复数据库。

2.OEM无法打开:检查控制面板中的OracleOratoolsmanagersever是否启动。因为在这里OEM的数据仓库(repository)是建立在数据库ZZYD中的,所以该数据库也必须处于打开状态。

ORACLE恢复方案

ORACLE恢复方案 ORACLE RESTORE SCHEME 第一章. 理解什么是数据库恢复 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。因此当发生上述故障后,希望能重构这个完整的数据库,该处理称为数据库恢复。恢复过程大致可以分为复原(Restore)与恢复(Restore)过程。 数据库恢复可以分为以下两类: 1.1实例故障的一致性恢复 当实例意外地(如掉电、后台进程故障等)或预料地(发出SHUTDOUM ABORT语句)中止时出现实例故障,此时需要实例恢复。实例恢复将数据库恢复到故障之前的事务一致状态。如果在在线后备发现实例故障,则需介质恢复。在其它情况ORACLE在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。如果需要,从装配状态变为打开状态,自动地激发实例恢复,由下列处理: (1)为了解恢复数据文件中没有记录的数据,进行向前滚。该数据记录在在线日志,包括对回滚段的内容恢复。 (2)回滚未提交的事务,按步1重新生成回滚段所指定的操作。 (3)释放在故障时正在处理事务所持有的资源。 (4)解决在故障时正经历一阶段提交的任何悬而未决的分布事务。 1.2介质故障或文件错误的不一致恢复 介质故障是当一个文件、一个文件的部分或磁盘不能读或不能写时出现的故障。 文件错误一般指意外的错误导致文件被删除或意外事故导致文件的不一致。 这种状态下的数据库都是不一致的,需要DBA手工来进行数据库的恢复,这种恢复有两种形式,决定于数据库运行的归档方式和备份方式。 (1)完全介质恢复可恢复全部丢失的修改。一般情况下需要有数据库的备份且数据库运行在归档状态下并且有可用归档日志时才可能。对于不同类型的错误,有不同类型的完全恢复可使用,其决定于毁坏文件和数据库的可用性。 (2)不完全介质恢复是在完全介质恢复不可能或不要求时进行的介质恢复。重构受损的数据库,使其恢复介质故障前或用户出错之前的一个事务一致性状态。不完全介质恢复有不同类型的使用,决定于需要不完全介质恢复的情况,有下列类型:基于撤消、基于时间和基于修改的不完全恢复。 基于撤消(CANCEL)恢复:在某种情况,不完全介质恢复必须被控制,DBA可撤消在指定点的操作。基于撤消的恢复地在一个或多个日志组(在线的或归档的)已被介质故障所破坏,不能用于恢复过程时使用,所以介质恢复必须控制,以致在使用最近的、未损的日

ORACLE数据库备份方案

ORACLE数据库备份方案 1.简介 ORACLE数据库备份是数据安全和恢复的关键环节之一、数据库备份 可以用来恢复意外删除、数据损坏或系统故障等情况下的数据。为了保障 数据库的可靠性和完整性,提供一个高效的备份方案是数据库管理人员的 重要任务。 2.备份类型 在设计ORACLE数据库备份方案之前,需要了解备份的不同类型,以 根据具体情况选择最合适的备份策略。 完全备份:备份数据库的所有数据和日志文件,包括数据文件、控制 文件和日志文件。 增量备份:只备份从上次完全备份或增量备份之后发生的所有数据和 日志文件变化。 差异备份:只备份从上次完全备份或差异备份之后的所有数据和日志 文件变化。 3.备份方案 根据备份类型,我们可以使用以下备份方案来保护ORACLE数据库的 数据: 3.1.完全备份方案 完全备份是最简单也是最常见的备份类型。该备份方案要求备份所有 的数据文件、控制文件和日志文件。进行完全备份时,可以遵循以下步骤:

1)选择一个合适的时间窗口,在此时间窗口内执行数据库的下线操作。 2)使用ORACLE提供的备份工具,如RMAN(Recovery Manager), 执行完全备份操作。 3)备份文件可以存储在本地磁盘、网络共享文件夹或云存储等位置,以防止本地硬件故障。 4)一旦备份完成,数据库可以重新上线并提供正常的服务。 3.2.增量备份方案 增量备份方案可以减少备份时间和所需的存储空间。它只需备份自上 次完全备份或增量备份后发生的变化。以下是增量备份的一个示例方案:1)每天或每周执行完全备份。 2)根据实际需求,每隔一定时间(如每小时)执行增量备份。 3)使用ORACLERMAN执行增量备份时,可以选择增量备份策略,如增 量备份级别0、1或2 4)备份文件的存储和恢复与完全备份方案相似。 3.3.差异备份方案 差异备份方案与增量备份方案类似,但其要求备份时仅备份自上次完 全备份或差异备份后发生的变化。以下是差异备份的一个示例方案:1)执行完全备份。 2)选择一个时间点,例如每天或每周的固定时间点,执行差异备份。

Oracle11g数据库备份与恢复

Oracle11g数据库备份与恢复

二、冷备份 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提

供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是: 1、是非常快速的备份方法(只需拷文件) 2、容易归档(简单拷贝即可) 3、容易恢复到某个时间点上(只需将文件再拷贝回去) 4、能与归档方法相结合,做数据库“最佳状态”的恢复。 5、低度维护,高度安全。 但冷备份也有如下不足: 1、单独使用时,只能提供到“某一时间点上”的恢复。 2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。 3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。 4、不能按表或按用户恢复。 如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:1、所有数据文件 2、所有控制文件 3、所有联机REDO LOG文件 4、 Init.ora文件(可选) 值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。 下面是作冷备份的完整例子。 (1)关闭数据库

(2)用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件 (3)重启Oracle数据库 三、热备份 热备份是在数据库运行的情况下,采用archivelog mode方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成: 1.数据文件一个表空间一个表空间的备份。 (1)设置表空间为备份状态 (2)备份表空间的数据文件 (3)回复表空间为正常状态 2.备份归档log文件 (1)临时停止归档进程 (2) log下那些在archive rede log目标目录中的文件 (3)重新启动archive进程 (4)备份归档的redo log文件 3.用alter database bachupcontrolfile命令来备份控制文件 热备份的优点是: 1.可在表空间或数据库文件级备份,备份的时间短。 2.备份时数据库仍可使用。 3.可达到秒级恢复(恢复到某一时间点上)。 4.可对几乎所有数据库实体做恢复 5.恢复是快速的,在大多数情况下爱数据库仍工作时恢复。 热备份的不足是:

oracle备份和恢复的操作流程

oracle备份和恢复的操作流程 Oracle备份和恢复的操作流程 备份和恢复是数据库管理中非常重要的任务,可以保护数据免受丢失或损坏的影响。在Oracle数据库中,备份和恢复操作有着明确的流程和步骤。本文将详细介绍Oracle备份和恢复的操作流程。 一、备份操作流程 1. 确定备份类型:根据需求和数据重要性,确定采用全备份、增量备份还是差异备份。全备份是指备份整个数据库,增量备份是指备份自上次备份以来的所有更改,差异备份是指备份自上次全备份以来的所有更改。 2. 选择备份工具:Oracle提供了多种备份工具,如RMAN (Recovery Manager)、Data Pump、Export/Import等。根据需求选择合适的备份工具。 3. 设置备份策略:根据业务需求和数据增长情况,设置备份策略,包括备份频率、保留周期、备份存储位置等。备份策略应该根据实际情况制定,以充分保护数据并节约存储空间。 4. 执行备份命令:根据选择的备份工具和策略,执行相应的备份命令。比如使用RMAN进行备份,可以使用RMAN命令行工具或者图形化工具执行备份操作。

5. 检查备份状态:备份完成后,需要检查备份状态,确保备份成功并没有错误。可以查看备份日志或者备份工具提供的状态信息。 二、恢复操作流程 1. 确定恢复类型:根据需要,确定采用完全恢复、部分恢复还是点恢复。完全恢复是指将整个数据库恢复到某个时间点或备份点的状态,部分恢复是指只恢复某些表或数据文件,点恢复是指只恢复某个时间点的数据。 2. 准备恢复环境:恢复操作需要一个独立的环境,可以是一个新的数据库实例或者一个已有的实例。需要确保恢复环境与原始数据库的版本和配置相同。 3. 恢复备份文件:根据选择的恢复类型,执行相应的恢复命令。如果是完全恢复,可以使用全备份文件进行恢复;如果是部分恢复,可以使用增量备份或差异备份文件进行恢复。 4. 应用归档日志:如果数据库启用了归档日志模式,需要将归档日志应用到恢复的数据库中,以保证数据的一致性。可以使用RMAN 命令或者其他工具将归档日志应用到数据库中。 5. 检查恢复状态:恢复完成后,需要检查恢复状态,确认数据完整性和一致性。可以通过检查数据库的日志文件、表数据以及应用程

Oracle数据库备份恢复实战

Oracle数据库备份恢复实战在管理和运维Oracle数据库时,数据库备份和恢复是一项至关重要的任务。无论是因为误操作、硬件故障还是数据丢失,数据库备份和恢复能够帮助我们从灾难中恢复并保护我们的数据。本文将介绍一些Oracle数据库备份恢复的实战方法,帮助读者了解如何有效地进行数据库备份和恢复。 1. 数据库备份方法 1.1 物理备份 物理备份是指对数据库的实际物理文件进行备份,备份的内容包括数据文件、控制文件和归档日志文件。物理备份通常使用RMAN (Recovery Manager)工具来完成。以下是进行物理备份的一般步骤: 1) 配置RMAN环境并连接到目标数据库; 2) 创建备份集并指定备份文件的存储位置; 3) 开始备份任务,RMAN将自动备份数据文件、控制文件和归档日志文件; 4) 备份完成后,可以使用RMAN验证备份文件的完整性。 1.2 逻辑备份 逻辑备份是指对数据库中的逻辑结构(如表、视图等)进行备份,备份的内容是SQL语句或者导出文件。逻辑备份通常使用expdp(数

据泵)或者exp(传统导出)工具来完成。以下是进行逻辑备份的一般 步骤: 1) 配置expdp或exp环境并连接到目标数据库; 2) 创建备份目录并指定备份文件的存储位置; 3) 开始备份任务,expdp或exp将自动生成备份文件; 4) 备份完成后,可以使用impdp或imp工具验证备份文件的完整性。 2. 数据库恢复方法 2.1 物理恢复 物理恢复是指将备份的物理文件还原到数据库中,并应用归档日志 文件来恢复丢失的数据。以下是进行物理恢复的一般步骤: 1) 将备份文件复制到目标数据库的恢复目录; 2) 启动目标数据库并将其切换到恢复模式; 3) 使用RMAN工具恢复数据文件、控制文件和归档日志文件; 4) 应用归档日志文件以恢复丢失的数据; 5) 完成恢复后,将数据库切换回正常运行模式。 2.2 逻辑恢复 逻辑恢复是指使用逻辑备份文件来还原数据库中的逻辑结构和数据。以下是进行逻辑恢复的一般步骤:

ORACLE数据备份与数据恢复方案

ORACLE数据备份与数据恢复方案ORACLE数据备份与数据恢复方案可以分为以下几个步骤: 1. 定期备份数据:根据业务需求和数据变动频率,制定合理的备份策略,包括完全备份、增量备份和差异备份。完全备份是将整个数据库备份到磁盘或磁带上,增量备份是备份自上次完全备份以来的所有更改,差异备份是备份自上次完全备份以来的所有更改。 2. 使用RMAN进行备份:Oracle提供了一个强大的备份和恢复工具RMAN (Recovery Manager),可以通过RMAN进行数据库备份和恢复。RMAN可以自动管理备份集和日志文件,并提供了多种备份选项,如全备份、增量备份、归档日志备份等。 3. 使用物理备份:物理备份是将数据库的物理文件直接备份到磁盘或磁带上,包括数据文件、控制文件和归档日志文件。物理备份可以通过复制这些文件来恢复数据库。 4. 使用逻辑备份:逻辑备份是将数据库的逻辑结构(如表、索引、视图等)导出为可读的格式,如SQL脚本或数据泵导出文件。逻辑备份可以通过重新导入这些数据来恢复数据库。 5. 定期测试恢复:定期测试数据恢复是验证备份和恢复方案是否可行的重要步骤。通过定期恢复测试,可以确保备份文件的完整性和可用性,并验证恢复过程的正确性。 6. 使用冷备份和热备份:冷备份是在数据库关闭状态下进行的备份,可以通过拷贝数据库的物理文件来进行。热备份是在数据库运行状态下进行的备份,可以通过RMAN进行增量备份或归档日志备份。

7. 使用数据保护技术:除了传统的备份和恢复方法外,还可以使用一些高级的数据保护技术,如数据复制、数据镜像、数据同步等,来提高数据的可用性和可靠性。 综上所述,ORACLE数据备份与数据恢复方案需要根据实际情况制定合理的备份策略,并结合RMAN等工具进行备份和恢复操作,同时定期测试备份和恢复过程,以保证数据的安全性和可用性。

RMAN的备份与恢复步骤详解

RMAN的备份与恢复步骤详解 RMAN(Recovery Manager)是Oracle数据库备份和恢复技术的核心 工具,提供了一种集中管理和自动化备份和恢复操作的方式。下面将详细 介绍RMAN的备份与恢复步骤。 备份步骤: 1.配置RMAN环境:确定RMAN备份目标、备份库、目标库的连接信息,并设置环境变量。 2.创建RMAN备份目标:使用CREATECATALOG命令创建RMAN备份目标,以存储备份信息和恢复目标的元数据。 3.创建备份策略:确定备份类型(完全备份、增量备份、增量备份级 别等),备份周期(每日、每周)、备份级别(全局备份、局部备份)以 及备份介质(磁盘、磁带)等。 4.执行备份命令:使用BACKUP命令执行备份操作。根据备份策略选 择相应的备份类型,并指定备份集的存储位置。可以使用全量备份、增量 备份或归档日志备份等方式进行备份。 5.备份验证和测试:使用RESTORE命令验证备份集是否可恢复。可以 恢复到测试库中,检查数据的完整性以及备份恢复的过程和时间。 恢复步骤: 1.准备恢复环境:确定系统状态,关闭数据库、归档日志模式,备份 控制文件,以备份增量恢复,恢复目标数据库的连接信息,并设置环境变量。

2.恢复控制文件:将备份的控制文件还原到指定位置,以获取数据库 的结构信息。 3.恢复数据库文件:使用RESTORE命令恢复需要的数据文件。可以选 择完全恢复(使用全量备份和归档日志进行恢复)、增量恢复(使用增量 备份和归档日志进行恢复)或点恢复(使用时间点或SCN号进行恢复)的 方式。 4.打开数据库:使用OPENRESETLOGS命令打开数据库,恢复数据库文 件到最新的状态。 5.检查恢复结果:验证恢复后数据库的完整性和一致性。使用相应的SQL语句检查数据的正确性、索引的可用性和对象的有效性。 常见问题处理: 1.恢复失败的处理:RMAN提供了很多失败后的处理命令,比如RECOVER命令来恢复损坏的数据文件,CROSSCHECK命令来检查备份文件的 完整性等。根据错误信息和日志文件,查找并处理故障原因。 2.恢复到指定时间点:根据业务需求,使用RECOVER命令指定SCN号 或时间点来恢复数据库到指定状态。 3.恢复丢失的归档日志:如果归档日志缺失,可以使用CATALOG命令 将归档日志交给RMAN进行管理,或者使用备份集中的归档日志进行恢复。总结: RMAN提供了一种集中管理和自动化备份和恢复操作的方式,简化了 备份和恢复的流程。备份步骤包括配置RMAN环境、创建备份目标、创建 备份策略、执行备份命令和备份验证。恢复步骤包括准备恢复环境、恢复

oracle数据库备份与恢复方案

oracle数据库备份与恢复方案在数据库管理中,备份和恢复是至关重要的任务,以确保数据的安 全性和可靠性。Oracle数据库是业界广泛使用的一种关系型数据库管 理系统,因此建立一个有效的备份与恢复方案对于保障数据的连续性 至关重要。本文将介绍一种基于Oracle数据库的备份与恢复方案。 备份策略 1. 定期完全备份:定期进行完全备份是数据库备份方案的核心。在 该方案中,每隔一段固定的时间,如每周或每月,进行一次完整的数 据库备份,将整个数据库的数据和日志都保存起来。这样,在发生故 障时可以方便地还原数据库到最新的备份点。 2. 增量备份:为了减少备份时间和存储空间的占用,可以采用增量 备份作为补充措施。增量备份只备份自上次完全备份以来所做的更改,有效地减少了备份所需的时间和存储空间。每次增量备份时,将存储 增量日志,记录了从上次备份至备份时间点之间的所有更改。这样, 在恢复时只需要应用增量日志即可。 3. 归档日志备份:归档日志是Oracle数据库的重要组成部分,记录 了数据库操作的详细信息。定期对归档日志进行备份,可以保证数据 库操作的完整性,以及为数据库灾难恢复提供必要的数据。 恢复策略

1. 完整恢复:在发生灾难性故障或数据库崩溃时,首先进行完整恢复。这需要使用最近的完全备份和所有的增量备份进行数据库的还原。还原数据库后,再应用归档日志以恢复到最新的状态。 2. 点时间恢复:除了完整恢复外,有时候也需要进行点时间恢复, 即将数据库恢复到某个特定的时间点。这通常发生在误操作或者数据 丢失的情况下。在点时间恢复中,需要找到离指定时间点最近的完全 备份,然后逐渐应用增量备份和归档日志,直到恢复到指定时间点。 3. 数据库复制和灾难恢复:为了防止单点故障,可以考虑使用数据 库复制和灾难恢复方案。通过将数据库复制到另一个地理位置的服务器,可以实现实时或定期的同步备份。当主数据库发生故障时,可以 快速切换到备份服务器,实现业务的持续运行。 总结 在Oracle数据库管理中,备份与恢复方案是确保数据安全的重要措施。通过定期完全备份、增量备份和归档日志备份,可以保证数据库 的连续性和完整性。在恢复时,可根据需要进行完整恢复或点时间恢复,并且可以通过数据库复制和灾难恢复提供额外的容错能力。定期 测试备份和恢复操作的有效性,是建立可靠备份与恢复方案的关键。

Oracle+sde数据备份、恢复

EXP SYSTEM/PASSWORD@SID FULL=Y FILE=D:\SYSTEM.DMP LOG=D:\SYSTEM.LOG 2.数据入库 (a)从数据库中删除SDE和SDE USER用户 DROP USER SDE CASCADE; DROP USER SDEUSER CASCADE; (b)创建新的SDE用户和SDEUSER 下为创建SDE用户过程: (i)创建表空间 CREATE TABLESPACE "SDE" LOGGING DA TAFILE 'C:\ORACLE\ORADATA\ORACLE\SDE.ora' SIZE 200M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO (ii)创建用户 CREATE USER "SDE" PROFILE "DEFAULT" IDENTIFIED BY "PASSWORD" DEFAULT TABLESPACE "SDE" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK; (iii)创建角色 GRANT "DBA" TO "SDE"; GRANT "CONNECT" TO "SDE"; GRANT "RESOURCE" TO "SDE"; (iiii)系统权限 GRANT ALTER ANY INDEX TO "SDE" WITH ADMIN OPTION; GRANT ALTER ANY TABLE TO "SDE" WITH ADMIN OPTION; GRANT ANAL YZE ANY TO "SDE" WITH ADMIN OPTION; GRANT CREATE ANY INDEX TO "SDE" WITH ADMIN OPTION; GRANT CREATE ANY PROCEDURE TO "SDE" WITH ADMIN OPTION; GRANT CREATE ANY SEQUENCE TO "SDE" WITH ADMIN OPTION; GRANT CREATE ANY TRIGGER TO "SDE" WITH ADMIN OPTION; GRANT CREATE ANY VIEW TO "SDE" WITH ADMIN OPTION; GRANT CREATE SESSION TO "SDE" WITH ADMIN OPTION; GRANT DROP ANY INDEX TO "SDE" WITH ADMIN OPTION; GRANT DROP ANY TABLE TO "SDE" WITH ADMIN OPTION; GRANT DROP ANY VIEW TO "SDE" WITH ADMIN OPTION; GRANT DROP ANY PROCEDURE TO "SDE" WITH ADMIN OPTION; GRANT DROP ANY SEQUENCE TO "SDE" WITH ADMIN OPTION; GRANT EXECUTE ANY PROCEDURE TO "SDE" WITH ADMIN OPTION; GRANT SELECT ANY SEQUENCE TO "SDE" WITH ADMIN OPTION; GRANT SELECT ANY TABLE TO "SDE" WITH ADMIN OPTION; GRANT UNLIMITED TABLESPACE TO "SDE" WITH ADMIN OPTION; 3.导入SDE和SDEUSER的数据 注意顺序,先SDE,后SDEUSER IMP SYSTEM/PASSWOR@SID FROMUSER=SDE TOUSER=SDE

ORACLE数据备份与数据恢复方案

ORACLE数据备份与数据恢复方案 一、背景介绍 在现代信息化时代,数据备份与恢复方案对于企业的安全和可靠性至关重要。ORACLE作为一种常用的关系型数据库管理系统,其数据备份与恢复方案更是必不可少的一环。本文将详细介绍ORACLE数据库的数据备份与数据恢复方案,以确保数据的完整性和可靠性。 二、数据备份方案 1. 定期全量备份 为了保证数据的完整性,建议每周进行一次全量备份。全量备份将数据库中的所有数据和表结构备份到磁盘或磁带上,以便在数据丢失或损坏时进行恢复。备份过程可以通过使用ORACLE提供的备份工具,如RMAN(Recovery Manager)来实现。 2. 增量备份 除了全量备份外,增量备份也是非常重要的一种备份方式。增量备份只备份自上次全量备份以来发生变化的数据,可以大大减少备份所需的时间和存储空间。增量备份可以通过使用ORACLE的归档日志(Archive Log)来实现,归档日志记录了数据库的所有变更操作。 3. 冷备份与热备份 冷备份是在数据库关闭的情况下进行的备份,适用于对数据库的停机时间要求较低的情况。热备份是在数据库运行的情况下进行的备份,可以实现数据库的连续运行,但备份过程可能会对数据库性能产生一定的影响。 4. 存储介质选择

备份数据需要选择合适的存储介质,如磁带、硬盘或网络存储设备。磁带备份具有较高的存储容量和较低的成本,适用于大规模数据备份。硬盘备份速度较快,适用于小规模数据备份。网络存储设备可以提供远程备份和容灾功能。 5. 定期验证备份数据的完整性 备份数据的完整性非常重要,建议定期验证备份数据的可用性和完整性。可以通过恢复测试来验证备份数据的有效性,确保在数据恢复时不会出现问题。 三、数据恢复方案 1. 故障恢复 当数据库发生故障时,可以通过以下步骤进行数据恢复: - 恢复最近的全量备份 - 应用增量备份和归档日志,将数据库恢复到故障发生前的状态 - 进行数据库的完整性检查和修复 2. 误操作恢复 当用户误操作导致数据丢失或损坏时,可以通过以下步骤进行数据恢复: - 恢复最近的全量备份 - 应用增量备份和归档日志,将数据库恢复到误操作前的状态 - 进行数据修复和恢复 3. 灾难恢复 在面对自然灾害、硬件故障或人为破坏等灾难性事件时,可以通过以下步骤进行数据恢复: - 恢复最近的全量备份

oracle数据库备份与恢复方案

oracle数据库备份与恢复方案

一、

二、

三、编写目的 本文档主要说明公司项目在实施现场的软件及数据的备份和恢复方案。 四、备份工具及备份方式 1.备份工具 Oracle RMAN(Recovery Manager):是一种用于备份(backup)、还原(restore)和恢复(recover)数据库的Oracle 工具。RMAN只能用于ORACLE8或更高的版本中。它能够备份整个数据库或数据库部件,如表空间、数据文件、控制文件、归档文件以及Spfile参数文件。RMAN也允许您进行增量数据块级别的备份,增量RMAN备份是时间和空间有效的,因为他们只备份自上次备份以来有变化的那些数据块。 2.备份方式 (1)自动备份:由Windows 计划任务调度完成; (2)手工备份:完成特殊情况下的备份,分热备份和冷备份,热备份是指在不关闭数据库情况下进行备份,冷备份则需要停止Oracle实例服务。 五、软件备份 1.以七天为一个周期每天23:00将所有软件拷贝到其他存储介质上 2.超出七天的备份依次删除 3.每月一号将上月最后7天的备份文件刻录到光盘上 六、软件恢复 1.找出最近的备份程序覆盖到正式运行环境的相应目录中

七、数据备份 1.业务系统或数据库在打重要补丁或升级的前后,必须按要求对业务系统进行 停机备份或非停机备份,备份需包含应用和数据库的文件系统及数据,备份 方式为手工备份,使用RMAN执行备份; 2.系统日常备份:作为7*24运行的重要系统,必须最小化数据丢失的同时,还 需要尽可能缩短恢复时间,数据库的日常备份策略如下: (1)确保数据库处于ArchiliveLog模式; (2)每日凌晨01:00执行数据库全备份,含控制文件备份; (3)每四小时间隔执行数据库归档日志备份,含控制文件备份; (4)每间隔两周执行数据库与应用系统文件备份,执行时间:数据库服务器在第一周的周六05:00,应用服务器在第一周的周六7:00。 3.每周一将上周的备份文件拷贝到其它存储介质上; 4.每月一号将上月最后一周的备份文件刻录到光盘上。 八、备份的存储 1.在确保成功备份数据的同时,必须严格保证存储结构的完整性,在备份服务 器或备份带库上需要保留足够的剩余空间,以存储需要保存的多份备份文件; 2.如项目上采用了专门的备份软件,有专用的备份存储,应提前规划好备份的 存储空间,比如按时间特征存储相对应的备份:年备份池、月备份池、日备 份池;和按类型存储的备份池:os文件系统池、db数据库池等; 3.如未采用专门的备份软件,在备份服务器上架设专门的ftp服务器,每次备 份之后,由计划任务定时调度,将备份数据传输至备份服务器,传输备份数 据的时间应选在服务器业务较少的空闲时间进行。 九、备份数据的保存规定 1.年备份永久保存(即每年最后一天的备份) 2.保留最近的12期月备份(即每月最后一天的备份)

Linux_oracle数据库的备份与恢复

Linux_oracle数据库的备份与恢复 1 数据库备份和恢复 (备份和恢复均已做成脚本自动运行,下列操作供参考,请不要在生产机上做测试) 1)数据库备份: ◆将dbexp.parm,dbexp.sh 拷贝至/home/oracle/backup/. 以oracle用户登录系统 $ cd /home/oracle/backup $ dos2unix * $ chmod 755 dbexp.sh ◆手工执行备份,用oracle用户登录: $ cd /home/oracle/backup $ ./dbexp.sh ◆自动执行备份,用root用户登录: #crontab -e 00 01 * * * su - oracle -c "/home/oracle/backup/dbexp.sh" 2)数据库恢复: 以oracle用户登录系统 ◆删除用户: sqlplus /nolog >connect / as sysdba; >drop user center cascade; >create user center identified by center; >grant connect,resource,dba to center ◆恢复数据库 $imp center/center full=y grants=y INDEXES=y constraints=y LOG=/tmp/backup.log rows=y ignore=y file=xxx (xxx--为以前备份的数据文件,如checkid_20041123.dat) oracle数据库的备份与恢复

原理及方法: 导出(备份) exp 用户名/密码@服务名file=d:daochu.dmp (rows=no(导出空结构)) 导入(恢复) imp 用户名/密码@服务名file=d:daochu.dmp fromuser=原用户名touser=新用户名 ---- 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如果平时对数据库做了备份,那么此时恢复数据就显得很容易。由此可见,做好数据库的备份是多么的重要,下面笔者就以oracle7为例,来讲述一下数据库的备份和恢复。oracle 数据库有三种标准的备份方法,它们分别为导出/导入(export/import)、冷备份、热备份。导出备份是一种逻辑备份,冷备份和热备份是物理备份。 ---- 一、导出/导入(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) ---- 即备份整个数据库,比如:

OracleRAC环境数据备份与恢复实践

Oracle RAC 环境数据备份与恢复实践 【导读】某企业因项目需要在Oracle RAC集群环境下,根据实际情况对Oracle数据库进行备份;使用生产环境的rman全备数据,进行恢复数据搭建测试环境。本文将详细介绍此案例中Oracle数据库rman全备份过程、Oracle RAC 环境下rman备份数据如何恢复至单机服务器。考虑到非常的实用,将实施经验分享给更多同行进行交流学习。【作者】焦育,从事系统运维8年,现就职于某大型车企公司信息部门,主要负责企业信息化基础建设与规划,主持数据中心系统运维工作,凭借Zabbix、grafana开源软件构建企业数据中心监控系统,精通linux操作系统、VMware虚拟化软件、掌握oracle与mysql数据库的运维管理、熟练使用shell、Python语言。 一、背景环境 生产环境使用两台DELL R840 服务器,安装了 linux centos 7.6操作系统,并配置多路径,使用 EMC untiy 作为共享存储,分配了2个1T LUN 存储数据库文件,1个500G LUN存放归档数据,3个30G LUN存放 OCR 、FALSH、GIMR 数据。Oracle RAC 软件版本是19C 19.0.0.0.0。

二、数据备份 1、备份策略 为保障oracle rac 集群数据安全,因项目组要求设计数据库备份方案。考虑到服务器RAC1与RAC2每台服务器自带2T本地可用容量,每次全备产生约 400GB数据文件。可将奇数天备份到RAC1,偶数天备份到RAC2, 4*400GB=1.6TB,每台服务器可以备份4天的全量数据。空间非常的富余,不计划使用rman的增量备份,直接全量备份近8天数据,恢复也较为方便。 2、备份过程 在RAC1主机下执行,(RAC2同理) 首先Oracle 数据库开启归档,归档模式下,才可以进行数据库的热备份、联机备份、手工备份等。非归档模式下,只能进行冷备份。当然我们rman备份是在线备份。

Oracle11g数据库备份与恢复

二、冷备份(bèi fèn) 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全(ānquán)的方法。冷备份的优点是: 1、是非常快速的备份(bèi fèn)方法(只需拷文件(wénjiàn)) 2、容易归档(guī〃dàng)(简单拷贝即可) 3、容易恢复到某个时间点上(只需将文件再拷贝回去) 4、能与归档方法相结合,做数据库“最佳状态”的恢复。 5、低度维护,高度安全。 但冷备份也有如下不足: 1、单独使用时,只能提供到“某一时间点上”的恢复。 2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。 3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。 4、不能按表或按用户恢复。 如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括: 1、所有数据文件 2、所有控制文件 3、所有联机REDO LOG文件 4、 Init.ora文件(可选) 值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。

下面是作冷备份的完整例子。 (1)关闭(guānbì)数据库 (2)用拷贝命令备份全部的时间文件、重做日志(rìzhì)文件、控制文件、初始化参数文件 (3)重启Oracle数据库 三、热备份(bèi fèn) 热备份是在数据库运行的情况(qíngkuàng)下,采用archivelog mode方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生(fāshēng)问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成: 1.数据文件一个表空间一个表空间的备份。 (1)设置表空间为备份状态 (2)备份表空间的数据文件 (3)回复表空间为正常状态 2.备份归档log文件 (1)临时停止归档进程 (2) log下那些在archive rede log目标目录中的文件 (3)重新启动archive进程 (4)备份归档的redo log文件 3.用alter database bachup controlfile命令来备份控制文件

Oracle备份恢复方案

Oracle 备份恢复方案 第一章基础知识 一、备份内容: 备份数据库一般包括备份数据库文件、控制文件、归档重做日志文件和INIT.OTRA文件,如果有可能,备份还应包括可执行代码和配置文件。 二、备份方法分类: 主要的备份方法有物理备份、逻辑备份和恢复管理器(RMAN)备份。 1.物理备份是实际物理数据库文件从一处拷贝到另一处的备份,它使用操作系统提供的拷贝命令来完成,包括操作系统备份(NT下一般不用)、冷备份和热备份; 2.逻辑备份是利用SQL从数据库中抽取数据并存入二进制文件,这些数据可以重新导入原来的数据库,或者以后导入其它数据库,ORACLE提供的EXPORT/IMPORT工具可用于进行数据库的导入和导出。 3.恢复管理器RMAN(Recovery Manager)为Oracle 8新引入,能够完成数据库的备份与恢复任务,既可以在图形用户界面GUI中使用,也可以在CLI (命令行)中使用。 三种方法各有长短,DBA应该综合灵活运用。 第二章物理备份和恢复 一、冷备份步骤如下: 1、关闭数据库实例: 命令行下关闭数据库有三种方式:normal,immediate,和abort,对于备份而言,immediate方式最好,因为这种方式既避免了normal方式下因用户忘记退出而造成的等待,且因为Oracle进行了回滚和检查点操作,可以保证数据库的一致和完整性。 推荐在控制面板的服务窗口下关闭专用服务,可以彻底的关闭数据库,这里的数据库服务名为OracleServiceZZYD。 2、拷贝所有与数据库相关的物理文件:包括控制文件、重做日志文件和数据库文件,这里拷贝目录E:\ZZYD即可,另外最好把监听器配置文件

ORACLE大数据备份与大数据恢复方案

摘要 结合某某电信IT系统目前正在实施的备份与恢复策略,重点介绍电信业务计算机管理系统<简称97系统>和营销支撑系统的ORALCE数据库备份和恢复方案. Oracle数据库有三种标准的备份方法,它们分别是导出/导入〔EXP/IMP〕、热备份和冷备份.要实现简单导出数据〔Export〕和导入数据〔Import〕,增量导出/导入的按设定日期自动备份,可考虑,将该局部功能开发成可执行程序,然后结合操作系统整合的任务计划,实现特定时间符合备份规划的备份应用程序的运行,实现数据库的本级备份,结合ftp简单开发,实现多服务器的数据更新同步,实现数据备份的异地自动备份. 关键字:数据库远程异地集中备份 目录 一、前言1 二、某某电信ORACLE数据库的备份与恢复方案1 2.1 备份系统数据库备份策略2 2.2 备份系统数据库恢复策略2 2.3 某某电信97系统与营销支撑系统的系统状况3 2.4 某某电信97系统、营销支撑系统与备份系统总体结构图3 2.5 备份系统结构图说明3 三、某某电信97系统的数据库备份和恢复4 3.1 备份方法4

3.2 备份策略5 3.3 恢复策略5 3.4 性能影响5 四、某某电信营销支撑系统的备份与恢复5 4.1 备份方法5 4.2 备份策略6 4.4 性能影响6 五、RMAN CATALOG 数据库的备份6 六、结语6

一、前言 目前,数据已成为信息系统的根底核心和重要资源,同时也是各单位的宝贵财富,数据的丢失将导致直接经济损失和用户数据的丢失,严重影响对社会提供正常的服务.另一方面,随着信息技术的迅猛开展和广泛应用,业务数据还将会随业务的开展而快速增加.但由于系统故障,数据库有时可能遭到破坏,这时如何尽快恢复数据就成为当务之急.如做了备份,恢复数据就显得很容易.由此可见,做好数据库的备份至关重要.因此,建立一个满足当前和将来的数据备份需求的备份系统是必不可少的.传统的数据备份方式主要采用主机内置或外置的磁带机对数据进展冷备份,这种方式在数据量不大、操作系统种类单一、服务器数量有限的情况下,不失为一种既经济又简明的备份手段.但随着计算机规模的扩大,数据量几何级的增长以与分布式网络环境的兴起,将越来越多的业务分布在不同的机器、不同的操作平台上,这种单机的人工冷备份方式越来越不适应当今分布式网络环境. 因此迫切需要建立一个集中的、自动在线的企业级备份系统.备份的内容应当包括基于业务的业务数据,又包括IT系统中重要的日志文件、参数文件、配置文件、控制文件等.本文以ORACLE数据库为例,结合某某电信的几个相关业务系统目前正在实施的备份方案,介绍ORACLE数据库的备份与恢复. 二、某某电信ORACLE数据库的备份与恢复方案 由于某某电信IT系统以前只采用逻辑备份方式进展数据库备份,速度较慢并且数据存储管理都很分散,甚至出现备份数据不完整的现象.为了提高备份数据的效率,提供可靠的数据备份,完善备份系统,保证备份数据的完整性,降低数据备份对网络和服务器的影响,对每个IT系统的备份数据进展集中管理,我们对备份工作进展了改良,将逻辑备份与物理备份相结合,在远程建立了一个异地集中、自动在线的备份系统即网络存储管理系统.〔这里用到的物理备份指热备份〕其具备的主要功能如下:<1>集中式管理 :网络存储藏份管理系统对整个网络的数据进展管理.利用集中式管理工具的帮助,系统管理员可对全网的备份策略进展统一管理,备份服务器可以监控所有机器的备份作业,也可以修改备份策略,并可即时浏览所有目录.所有数据可以备份到同备份服务器或应用服务器相连的任意一台磁带库内. <2>全自动的备份: 对于大多数机房管理人员来说,备份是一

Oracle9i RMAN备份及恢复步骤

1、切换服务器归档模式,如果已经是归档模式可跳过此步: %sqlplus /nolog (启动sqlplus) SQL> conn / as sysdba (以DBA身份连接数据库) SQL> shutdown immediate;(立即关闭数据库) SQL> startup mount (启动实例并加载数据库,但不打开) SQL> alter database archivelog;(更改数据库为归档模式) SQL> alter database open;(打开数据库) SQL> alter system archive log start;(启用自动归档) SQL> exit (退出) 2、连接: %rman target=rman/rman@mydb(启动恢复管理器) 3、基本设置: RMAN> configure default device type to disk;(设置默认的备份设备为磁盘) RMAN> configure device type disk parallelism 2;(设置备份的并行级别,通道数) RMAN> configure channel 1 device type disk fromat '/backup1/backup_%U';(设置备份的文件格式,只适用于磁盘设备) RMAN> configure channel 2 device type disk fromat '/backup2/backup_%U';(设置备份的文件格式,只适用于磁盘设备) RMAN> configure controlfile autobackup on;(打开控制文件与服务器参数文件的自动备份) RMAN> configure controlfile autobackup format for device type disk to '/backup1/ctl_%F';(设置控制文件与服务器参数文件自动备份的文件格式) 4、查看所有设置: RMAN> show all

相关主题
文本预览
相关文档 最新文档