oracle学习笔记(1)-数据备份与恢复

王朝oracle·作者佚名  2008-05-31
宽屏版  字体: |||超大  

数据备份

不论何种方式,数据库的备份即为data file/control file/redo file此三种文件的备份。

1、eXP/imp的备份方式

2、脱机备份方式(offline backup)

3、联机备份方式(online backup)

4、standy的运行模式

1、exp/imp的备份方式

(1)命令方式

可以在online的环境下进行。

(2)OEM方式

利用导出备份向导进行导出。

2、脱机备份方式(offline backup)

复制相关的文件即可。

(1)关闭数据库;

(2)复制文件,datafile/control file/redo log file;

(3)打开数据库。

3、联机备份方式(online backup)

条件:

(1)数据库不能关闭;

(2)数据库必需处于归档模式(archive mode),即redo log file记录满后,把完整的redo log file保存

在磁盘上;

让数据处于archive mode的方法:

(1)设置archive mode;

在initorcl.ora文件中设置如下参数:

#启动arch背景的处理程序

log_archive_start=true

#设置archive log file的存放地方

log_archive_dest=/home/oradata/orcl/archive

#设置脱机事务日志的文件名

log_archive_format=-s%.arc

(2)mount状态下设置archive mode,打开数据库;

startup mount pfile=initorcl.ora;

alter database archivelog;

alter database open;

联机备份方法一

(1)设置tablespace为backup mode;

alter tablespace tablespace_name begin backup;

(2)复制相关的数据表

copy sourcefile destfile

(3)恢复tablespace到正常状态

alter tablespace tablespace_name end backup;

(4)backup control file

alter database backup controlfile to 'control.bk'

(5)copy redo log file

4、standy的运行模式

此模式为主从服务器备份模式。

方法:

(1)预备备份主机

(2)主要数据库的备份

方法如下:

a、full offline backup

b、online backup

c、备份数据库的control file

alter database backup standby controlfile as 'filename'

(3)确定主要机器是处于archivelog mode

操作方法如3所示。

(4)从主要机器将backup datafiles / control file复制到备份主机。

复制的文件如下:

a、control file

b、backup datafiles;

c、archived redo logs

d、onlie redo logs

e、initialization file

(5)设置主要机器的initialization parameters

(6)设置备份主机的initialization parameters

?????

可能与(5)设置有所不同。

(7)打开备份主机数据库

a、在nomount状态下打开数据库,然后alter启动standby机器

start nomount pfile=initstandby.ora;

alter database mount standby database;

b、standby mode 下启动后,表示备份机器已经能够接受primary数据库的archive redo log,可用FTP或Oracle

提供的方法由oracle自动取得数据。

(8)启动备份数据库

alter database recover managed standby database;

数据恢复

1、脱机备份的恢复(会丢失数据)

(1)确定数据库关闭

(2)复制相关备份文件到相关位置(control file,redo log file,datafiles)

(3)启动数据库

2、archive mode恢复

(1)complete recovery

a、关闭数据库;

shutdown;

b、在mount阶段打开数据库

startup mount;

c、进行数据库恢复

set autorecovery on;

recover database;

d、完成recovery后,打开数据库

alter database open;

(2)对单一文件或数据表recovery;

a、让需要恢复的tablespace脱机

alter tablespace appdata offline immediate;

b、用好的备份文件取代损坏文件

c、确定要恢复的archive log file存在

d、开始recovery;

recover tablespace appdata;

recover datafile 'user01.dbf';

e、完成后,alter让tablespace联机

alter tablespace appdata online;

(3)incomplete recovery

假如事务日志文件损坏,则要注重datafiles and control file记录的log sequence number是不相同的,则为不完全恢复。

mount阶段要把log sequence number置为1,这样数据库才能打开。

使用cancel恢复到某一时间点

a、mount打开数据库

startup mount;

b、恢复

recover database until cancel;

c、完成之后,打开数据库(open mode),重新设置control file and datafiles的log sequence number的设置为1;

alter database open resetlogs;

使用指定时间

a、mount打开数据库

startup mount;

b、恢复

recover database until time '2001-09-10:18:00:00';

c、完成之后,打开数据库(open mode),重新设置control file and datafiles的log sequence number的设置为1;

alter database open resetlogs;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有