当前位置:Gxlcms > mysql > OracleRMAN不完全恢复database到指定时间点

OracleRMAN不完全恢复database到指定时间点

时间:2021-07-01 10:21:17 帮助过:36人阅读

Oracle RMAN不完全恢复database到指定时间点(简单模拟),测试database不完全恢复到2012-03-01

Oracle RMAN不完全恢复database到指定时间点(简单模拟),测试database不完全恢复到2012-03-01

cmd>sqlplus / as sysdba;

SQL>shutdown immediate

SQL>alter database archivelog;

SQL>conn squirrel/squirrel;

SQL>CREATE TABLE a(id number(10) not null primary key, name varchar2(20));

SQL>INSERT INTO a(id,name) values(1,zhangsan);

SQL>conn / as sysdba;

SQL> select * from squirrel.a;

ID NAME

---------- --------------------

1 zhangsan

设置时间格式

SQL>alter session set nls_date_format=’yyyy-mm-dd hh24:mi:ss’;

SQL>select sysdate from dual;

SYSDATE

-------------------

2012-03-01 16:00:42

SQL>shutdown immediate;

SQL>startup mount;

SQL>exit

cmd>rman target /

RMAN>backup database;

RMAN>exit;

这里模拟对T表的误删除(DDL类型的TRUNCATE方法)

SQL>truncate table squirrel.a;

接着我们不完全恢复到指定时间2012-03-01 16:00:42

【重要提醒】在使用RMAN完成基于时间点的不完全恢复之前,最好对现场做一个备份,我们这里只需要备份数据库的控制文件和日志文件即可。当恢复结束后不满足我们要求时,可以恢复控制文件和日志文件后重新进行恢复。

RMAN> run {

2> allocate channel c1 type disk;

3> allocate channel c2 type disk;

4> sql 'alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss"';

5> set until time='2012-03-01 16:00:42';

6> restore database;

7> recover database;

8> alter database open resetlogs;}

使用目标数据库控制文件替代恢复目录

分配的通道: c1

通道 c1: sid=156 devtype=DISK

分配的通道: c2

通道 c2: sid=155 devtype=DISK

sql 语句: alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss"

正在执行命令: SET until clause

linux

人气教程排行