DG报错ORA-01111、ORA-01110、ORA-01157备库不同步

刚同步好没多久的dg备库,过两天查看同步状态发现备库数据不同步,重新开启同步也不能正常同步。
查看alert日志,查看报错如下:

MRP0: Background Media Recovery terminated with error 1111
Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\ris\ris\trace\ris_pr00_2546900.trc:
ORA-01111: 数据文件 11 名称未知 - 请重命名以更正文件
ORA-01110: 数据文件 11: 'D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\UNNAMED00011'
ORA-01157: 无法标识/锁定数据文件 11 - 请参阅 DBWR 跟踪文件
ORA-01111: 数据文件 11 名称未知 - 请重命名以更正文件
ORA-01110: 数据文件 11: 'D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\UNNAMED00011'

主库查看11号数据文件是什么,发现是dg同步好后新创建的表空间。遂联想到standby_file_management参数,查看发现果然该参数值为MANUAL
在这里插入图片描述
找到原因后即可开始处理故障,处理方法无非就是重新同步整库,或者重命名数据文件。

这个库虽然数据量不大,因为没处理过类似故障,这里还是用重命名的方法处理一下。
1.查看哪些文件需要处理

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------
X:\ORADATA\RIS\SYSTEM01.DBF
X:\ORADATA\RIS\SYSAUX01.DBF
X:\ORADATA\RIS\UNDOTBS01.DBF
X:\ORADATA\RIS\USERS01.DBF
X:\ORADATA\RIS\PACS01.DBF
X:\ORADATA\RIS\RIS01.DBF
X:\ORADATA\RIS\RISINDEX01.DBF
X:\ORADATA\RIS\OGG.DBF
X:\ORADATA\RIS\PACS02.DBF
X:\ORADATA\RIS\PACS03.DBF
D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\UNNAMED00011

可以看到最后一个数据文件需要处理,数据库中该文件号为11#
也可以用这个sql查看:

SQL> select * from v$recover_file where error like '%FILE%';

2.重命名数据文件
dg备库重命名文件的语法和普通rename好像不太一样,百度后查到如下语法。


SQL> alter database create datafile'D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\UNNAMED00011' as'X:\ORADATA\RIS\ZBX.DBF';
数据库已更改。
修改完成后查看数据文件:
SQL> select * from v$recover_file where error like '%FILE%';

未选定行

SQL> select name from v$datafile;

NAME
-------------------------------------------------
X:\ORADATA\RIS\SYSTEM01.DBF
X:\ORADATA\RIS\SYSAUX01.DBF
X:\ORADATA\RIS\UNDOTBS01.DBF
X:\ORADATA\RIS\USERS01.DBF
X:\ORADATA\RIS\PACS01.DBF
X:\ORADATA\RIS\RIS01.DBF
X:\ORADATA\RIS\RISINDEX01.DBF
X:\ORADATA\RIS\OGG.DBF
X:\ORADATA\RIS\PACS02.DBF
X:\ORADATA\RIS\PACS03.DBF
X:\ORADATA\RIS\ZBX.DBF

已选择11行。

已经修改好了。

3.将standby_file_management参数改为auto,继续同步数据

SQL> alter system set standby_file_management=AUTO scope=both;

系统已更改。

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;

数据库已更改。
  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值