RMAN如何恢复drop purge的表
admin
2023-05-07 19:22:03
0次
@ORA12C>  alter session set nls_date_format='yyyy-mm-dd hh34:mi:ss';
Session altered.
SYS@ORA12C> create table  t_0920 as select * from dba_objects;
Table created.
SYS@ORA12C> select count(*) from t_0920;
  COUNT(*)
-----------------
     91691
1 row selected.
SYS@ORA12C> select sysdate from dual;
SYSDATE
-------------------
2015-09-20 14:17:49
1 row selected.
SYS@ORA12C> drop table t_0920 purge;
Table dropped.
SYS@ORA12C> desc t_0920;
ERROR:
ORA-04043: object t_0920 does not exist
SYS@ORA12C> create table t_09201 as select * from dba_objects;
Table created.
SYS@ORA12C> select count(*) from t_09201;
  COUNT(*)
-----------------
     91691
1 row selected.
SYS@ORA12C> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@ORA12C> startup mount;
ORACLE instance started.
Total System Global Area  729808896 bytes
Fixed Size      2928680 bytes
Variable Size    570429400 bytes
Database Buffers   150994944 bytes
Redo Buffers      5455872 bytes
Database mounted.

现在需要把t_0920表恢复过来:

run{
sql "alter session set nls_date_format=''yyyy-mm-dd hh34:mi:ss''";
set until time '2015-09-20 14:17:49';
restore database;
recover database;
6> }
using target database control file instead of recovery catalog
sql statement: alter session set nls_date_format=''yyyy-mm-dd hh34:mi:ss''
executing command: SET until clause
Starting restore at 20-SEP-15
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=355 device type=DISK
creating datafile file number=2 name=/u01/app/oracle/oradata/ORA12C/t2.dbf
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/ORA12C/system01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/ORA12C/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/ORA12C/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/ORA12C/example01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /u01/app/oracle/oradata/ORA12C/users01.dbf
channel ORA_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/ORA12C/backupset/2015_09_20/o1_mf_nnndf_TAG20150920T120820_bzwd9ntd_.bkp
channel ORA_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/ORA12C/backupset/2015_09_20/o1_mf_nnndf_TAG20150920T120820_bzwd9ntd_.bkp tag=TAG20150920T120820
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:01:56
Finished restore at 20-SEP-15
Starting recover at 20-SEP-15
using channel ORA_DISK_1
starting media recovery
archived log for thread 1 with sequence 18 is already on disk as file /u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_18_bzwh058r_.arc
archived log for thread 1 with sequence 19 is already on disk as file /u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_19_bzwhh60d_.arc
archived log for thread 1 with sequence 20 is already on disk as file /u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_20_bzwhzsts_.arc
archived log for thread 1 with sequence 1 is already on disk as file /u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_1_bzwmprks_.arc
archived log file name=/u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_18_bzwh058r_.arc thread=1 sequence=18
archived log file name=/u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_19_bzwhh60d_.arc thread=1 sequence=19
archived log file name=/u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_20_bzwhzsts_.arc thread=1 sequence=20
archived log file name=/u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_1_bzwm5k1c_.arc thread=1 sequence=1
archived log file name=/u01/app/oracle/fast_recovery_area/ORA12C/archivelog/2015_09_20/o1_mf_1_1_bzwmprks_.arc thread=1 sequence=1
media recovery complete, elapsed time: 00:00:07
Finished recover at 20-SEP-15
RMAN> alter database open resetlogs;
Statement processed

验证:t_0920 表已经恢复了,t_09201表不存在了。

SYS@ORA12C> select count(*) from t_0920;
  COUNT(*)
-----------------
     91691
1 row selected.
SYS@ORA12C> select count(*) from t_09201;
select count(*) from t_09201
                     *
ERROR at line 1:
ORA-00942: table or view does not exist

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...