DG模式下如果主库/备库被删除数据文件,怎么恢复?


## DG主库数据文件丢失,有2种方法可以恢复:


**方法一:使用备份恢复数据文件**
1.连接上主数据库作为目标数据库:

RMAN TARGET / CATALOG rman/<pswd>@RCAT
2.将数据文件更改为脱机:

RMAN> SQL "ALTER DATABASE DATAFILE 10 OFFLINE";
3.还原和恢复数据文件:

RMAN> RESTORE DATAFILE 10;
RMAN> RECOVER DATAFILE 10;
RMAN> SQL "ALTER DATABASE DATAFILE 10 ONLINE";

**方法二:使用备用数据库恢复数据文件**
1.连接备用数据库作为主数据库,并连接上主数据库作为辅助数据库:

RMAN TARGET sys/<pswd>@MATRIX_DR0 CATALOG rman/<pswd>@RCAT auxiliary /
2.备份备用数据库上的数据文件,并传送到主数据库:

RMAN> BACKUP AS COPY DATAFILE 10 AUXILIARY FORMAT '/data/matrix/users.dbf';
3.启动RMAN,连接上主数据库作为目标数据库,并连接上恢复目录:

RMAN TARGET / CATALOG rman/<pswd>@RCAT
4.使用CATALOG DATAFILECOPY命令编目该数据文件副本,以便RMAN可以使用它:

RMAN> CATALOG DATAFILECOPY '/data/matrix/users.dbf';
5.使用SWITCH DATAFILE命令切换数据文件副本,使该文件成为当前数据文件:

RUN {
SET NEWNAME FOR DATAFILE 10 TO '/data/matrix/users.dbf';
SWITCH DATAFILE 10;
}

## DG备库数据文件丢失,可以通过RMAN来还原和恢复:

1.先在备库停止SQL Apply:

SQL> alter database recover managed standby database cancel;
2.restore数据文件:

SQL> restore datafile 10;
3.recover数据文件:

SQL> recover datafile 10;
4.在备库启动SQL Apply:

SQL> alter database recover managed standby database using current logfile disconnect;

 

posted @ 2019-03-10 21:23  一代天娇的博客  阅读(892)  评论(0编辑  收藏  举报