问题背景:
客户dataguard宕机重启后,MRP进程因缺少数据文件起不来
报错如下:
ORA-01111: name for data file 19 is unknown - rename to correct file
复制
解决过程
1> 检查dataguard
数据库已经正常启动,尝试启动MRP进程起不来
查看alert日志 (10g)
Errors in file home/oracle/admin/oradb/bdump/zjport_mrp0_17798.trc:
ORA-01111: name for data file 19 is unknown - rename to correct file
ORA-01110: data file 19: '/home/oracle/product/10.2.0/db_1/dbs/UNNAMED00019'
ORA-01157: cannot identify/lock data file 19 - see DBWR trace file
ORA-01111: name for data file 19 is unknown - rename to correct file
ORA-01110: data file 19: '/home/oracle/product/10.2.0/db_1/dbs/UNNAMED00019'
MRP0: Background Media Recovery process shutdown (oradb)
复制
查看alert日志发现datafile为19的数据库文件缺失,尝试重新创建
复制
ALTER SYSTEM SET standby_file_management='MANUAL' SCOPE=BOTH;
alter database create datafile '/home/oracle/product/10.2.0/db_1/dbs/UNNAMED00019' as '/u01/oracle/oradata/oradb/test02.dbf'
ALTER SYSTEM SET standby_file_management='AUTO' SCOPE=BOTH;
复制
复制
2> 重启MRP进程
复制
ALTER DATABASE RECOVER managed standby database disconnect from session parallel 12;
复制
11g环境
如果是11g则报错可能如下:
File #1103 added to control file as 'UNNAMED01103' because
the parameter STANDBY_FILE_MANAGEMENT is set to MANUAL
The file should be manually created to continue.
Errors with log oradb/db_dg_arc/oradb/oradb_2_193066_899639967.arc
MRP0: Background Media Recovery terminated with error 1274
Errors in file u01/oracle/diag/rdbms/oradb/oradb/trace/oradb_pr00_25640.trc:
ORA-01274: cannot add datafile '+oradb/oradb/datafile/sysaux_04.dbf' - file could not be created
Managed Standby Recovery not using Real Time Apply
Recovery interrupted!
复制
datafile为1103的数据文件缺失,尝试重新创建
复制
ALTER SYSTEM SET standby_file_management='MANUAL' SCOPE=BOTH;
alter database create datafile '/u01/oracle/product/db11gr2/dbs/UNNAMED01103' as '/sxbddj/sxbddjdat_u01/sxbddj/sysaux_04.dbf';
ALTER SYSTEM SET standby_file_management='AUTO' SCOPE=BOTH;
ALTER DATABASE RECOVER managed standby database disconnect from session parallel 12 ;
复制
复制
如果不知道文件编号所代表的数据文件是哪一个,可以从主库中获取信息
复制
SQL> select name from v$datafile where file#=1103;
NAME
--------------------------------------------------------------------------------
oradb/oradb/datafile/sysaux_04.dbf
复制
复制
文章转载自数据与人,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
615次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
608次阅读
2025-04-15 17:24:06
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
502次阅读
2025-04-08 09:12:48
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
485次阅读
2025-04-20 10:07:02
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
467次阅读
2025-04-22 00:20:37
Oracle 19c RAC更换IP实战,运维必看!
szrsu
445次阅读
2025-04-08 23:57:08
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
439次阅读
2025-04-22 00:13:51
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
435次阅读
2025-04-17 17:02:24
一页概览:Oracle GoldenGate
甲骨文云技术
421次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
378次阅读
2025-04-17 09:30:30