ORACLE 数据库RMAN备份恢复

机器a:

select instance_name from v$instance;

select name from v$database;

select name from v$datafile;

查询日志模式:

archive log list;

shutdown immediate;

startup mount;

把日志改为归档模式:

alter database archivelog;

alter database open;

alter system archive log current;

select name from v$archived_log;

打开控制文件跟踪:

alter database backup controlfile to trace;

查看跟踪文件位置:

show parameter user_dump_dest

cmd:

set oracle_sid=orcl

rman target sys/abc

host “md c:\back”;

run

{

backup database;

format ‘c:\back\%d_%s_%t_full.bak’;

}

select file#,name from v$datafile;

传送以下文件到机器b:

c:\back

d:\oracle\product\10.2.0\admin\orcl

create controlfile set database “orcl” resetlogs archivelog

maxlogfiles 16

maxlogmembers 3

maxdatafiles 100

maxinstances 8

maxloghistory 292

logfile

group 1 ‘e:\oracle\product\10.2.0\oradata\orcl\redo01.log’ size 50m,

group 2 ‘e:\oracle\product\10.2.0\oradata\orcl\redo02.log’ size 50m,

group 3 ‘e:\oracle\product\10.2.0\oradata\orcl\redo03.log’ size 50m

— standby logfile

datafile

‘e:\oracle\product\10.2.0\oradata\orcl\system01.dbf’,

‘e:\oracle\product\10.2.0\oradata\orcl\undotbs01.dbf’,

‘e:\oracle\product\10.2.0\oradata\orcl\sysaux01.dbf’,

‘e:\oracle\product\10.2.0\oradata\orcl\users01.dbf’,

‘e:\oracle\product\10.2.0\oradata\orcl\xm’

character set zhs16gbk

机器b:

创建要恢复oracle的目录

e:\oracle\product\10.2.0\oradata\orcl

e:\oracle\product\10.2.0\admin

e:\oracle\product\10.2.0\falsh_recovery_area

把收到的文件夹orcl放到e:\oracle\product\10.2.0\admin

拷贝

e:\oracle\product\10.2.0\admin\orcl\pfile中的参数文件到自己真实数据库db_1\database文件夹中,并改名为initorcl.ora

打开initorcl.ora

把里面的路径改为真实oracle数据库的位置

d:\替换为e:\

cmd1:

set oracle_sid=orcl

oracle orcl

等到提示ctrl+c

cmd2:

set oracle_sid=orcl

sqlplus / as sysdba

startup nomount;

cmd3:

set oracle_sid=orcl

rman target sys/abc

restore controlfile from ‘c:\back\orcl_2_20090414_full.bak’;

cmd2:

alter database mount;

cmd3:

run{

set newname for datafile 1 to ‘e:\oracle\product\10.2.0\oradata\orcl\system01.dbf’;

set newname for datafile 2 to ‘e:\oracle\product\10.2.0\oradata\orcl\undotbs01.dbf’;

set newname for datafile 3 to ‘e:\oracle\product\10.2.0\oradata\orcl\sysaux01.dbf’;

set newname for datafile 4 to ‘e:\oracle\product\10.2.0\oradata\orcl\users01.dbf’;

set newname for datafile 5 to ‘e:\oracle\product\10.2.0\oradata\orcl\xm’;

restore database;

switch datafile all;

}

cmd2:

select name from v$database;

shutdown immediate;

startup mount;

alter database backup controlfile to trace;

找到跟踪文件:

重做控制文件:把里面的路径改为正确路径:

d:\改为 e:\

shutdown immediate;

startup nomount;

执行生成控制文件的语句;执行钱必须先删除.ctl的文件

alter database open resetlogs;

select name from v$database;

select member from v$logfile;

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐