一、描述 单实例ADG数据库,备库system01.dbf文件损坏,需要重新恢复数据文件,保证主库库数据一致。
二、处理过程
1、数据库启动到mount状态 Recovery Manager: Release 11.2.0.4.0 - Production on Thu Dec 12 20:42:35 2019
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database (not started)
RMAN> startup mount;
Oracle instance started database mounted
Total System Global Area 3089920000 bytes
Fixed Size 2257232 bytes Variable Size 654315184 bytes Database Buffers 2415919104 bytes Redo Buffers 17428480 bytes
2、使用RMAN恢复 $rman target sys/xxxx@devdb auxiliary sys/xxx@devdbdg
Recovery Manager: Release 11.2.0.4.0 - Production on Thu Dec 12 20:43:53 2019
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: DEVDB (DBID=931475173) connected to auxiliary database: DEVDB (DBID=931475173, not open)
RMAN> run { allocate channel d1 type disk ; allocate channel d2 type disk ; backup as copy reuse datafile 1 auxiliary format '/oradata/devdbdg/system01.dbf'; }2> 3> 4> 5> 6>
using target database control file instead of recovery catalog allocated channel: d1 channel d1: SID=1145 device type=DISK
allocated channel: d2 channel d2: SID=1715 device type=DISK
Starting backup at 12-DEC-2019 20:45:23 channel d1: starting datafile copy input datafile file number=00001 name=/oradata/devdb/system01.dbf
output file name=/oradata/devdbdg/system01.dbf tag=TAG20191212T204523 channel d1: datafile copy complete, elapsed time: 00:00:15 Finished backup at 12-DEC-2019 20:45:38 released channel: d1 released channel: d2
RMAN> RMAN> exit
Recovery Manager complete. devdb01:devdb:/oradata/devdbdg$sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Thu Dec 12 20:45:50 2019
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>** alter database recover managed standby database using current logfile disconnect from session;**
Database altered.
SQL> alter database recover managed standby database cancel;
Database altered.
SQL> alter database open;
Database altered.
SQL> alter database recover managed standby database using current logfile disconnect from session;
Database altered.
SQL> select * from t;
ID
1
2
3
4
SQL> SQL> select process,status from v$managed_standby;
PROCESS STATUS
ARCH CONNECTED ARCH CONNECTED ARCH CLOSING ARCH CONNECTED RFS IDLE RFS IDLE RFS IDLE MRP0 APPLYING_LOG