碟科服务项目
专家提示
  • - 拿放硬盘要小心轻放
  • - 硬件异常时请勿随意加电
  • - 数据丢失后勿对源盘进行写操作
  • - 向专业数据恢复公司寻求帮助

Oracle10g冷备份与应用冷备份和归档恢复数据库的方法

更新时间:2010.03.14
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;即可。

分享到: