Oracle10g冷备份与应用冷备份和归档恢复数据库的方法
2024-08-29 13:53:36
供稿:网友
Oracle数据库冷备份比较简单,就是数据库在关闭的状态下进行文件备份。需要拷贝的文件包括日志文件、控制文件、数据文件,这三类文件必不可少。最好还要备份SPFILEMCAIMS.ORA或INITmcaims.ORA文件和重置控制文件的sql语句,这在改变恢复数据库的文件路径时会用到。
具体步骤如下:
首先,找到要备份的文件路径。可用如下语句获得。
sqlplus username/passWord as sysdba;
select name from v$datafile;
select name from v$controlfile;
select name from v$logfile;
show parameters spfile;
alter database backup controlfile to trace resetlogs;
然后从bdump跟踪文件中找到重置控制文件的参考sql语句:如下:
*******************************************************
STARTUP NOMOUNT
CREATE CONTROLFILE SET DATABASE "RCAT" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 454
LOGFILE
GROUP 1 'D:/LXC/ORADATA/RCAT/REDO01.LOG' SIZE 10M,
GROUP 2 'D:/LXC/ORADATA/RCAT/REDO02.LOG' SIZE 10M,
GROUP 3 'D:/LXC/ORADATA/RCAT/REDO03.LOG' SIZE 10M
DATAFILE
'D:/LXC/ORADATA/RCAT/SYSTEM01.DBF',
'D:/LXC/ORADATA/RCAT/UNDOTBS01.DBF',
'D:/LXC/ORADATA/RCAT/SYSAUX01.DBF',
'D:/LXC/ORADATA/RCAT/USERS01.DBF',
'D:/LXC/ORADATA/RCAT/USERS02.DBF',
'D:/LXC/ORADATA/RCAT/TOOLS01.DBF'
CHARACTER SET ZHS16GBK;
*******************************************************
shutdown immediate;
然后关闭数据库,备份文件。
恢复数据库
用数据库配置向导创建数据库例程,删掉生成的数据库文件,用备份文件替代。修改INITmcaims.ORA文件,重启数据库服务。
sqlplus sys/pwd as sysdba;
shutdown immediate;
如果恢复数据库时要改变文件的路径,则需要重置控制文件。执行重置控制文件的sql(已根据实际情况修改过路径);
alter database mount;
设置归档路径:
alter system set log_archive_dest_1='location=n:/gongxian';
alter database recover using backup controlfile;
(
alter database recover automatic until time '2008-09-13:13:59:59';
alter database recover automatic until scn 454300;
alter database recover until cancel using backup controlfile;
)
恢复完毕,alter database open resetlogs;即可。