记录一次因ASM磁盘组空间不足,导致MAP进程无法启动

生产中 ADG 库出现告警,检查发现 map 进程异常:

检查 alter 日志,出现:

ORA-19504:failed to create file "+DATAC1/casarch/2_162186_1067953047.arc"

ORA-17502:ksfdcre:4 Failed to create file ...

ORA-15041:diskgroup "DATAC1" space exhausted

ORA-16038:log 21 sequence# 213703 cannot be archived

ORA-19504:failed to create file ""

ORA-00312:online log 21 thread 1:'+DATAC1/xx/ONLINELOG/group_21.958.107215771'

ORA-00312:online log 21 thread 1:'+DATAC1/xxx/ONLINELOG/group_21.959.107215847'

检查 ASM 磁盘空间不足,导致无法归档

检查数据库的归档保留时间:

rman target /

show retention policy;

清理归档日志:

复制代码
cat clear_arch.sh

~/.bash profile
rman target / nocatalog <<EOF
delete NOPROMPT archivelog until time "sysdate-2";
crosscheck archivelog all;
exit
EOF

nohup sh clear_arch.sh >> /home/oracle/clear_arch.log &

清理归档后,磁盘空间正常.

再次尝试拉起 map 进程:

复制代码
--启动mrp
ALTER DATABASE recover managed standby database using current logfile disconnect from session;
--查看mrp是否正常
SELECT inst_id,PROCESS, STATUS,SEQUENCE#,BLOCK#,BLOCKS, DELAY_MINS FROM gV$MANAGED_STANDBY where process in ('RFS','MRP0') and SEQUENCE# <>0;

map 进程还是无法正常启动:

ORA-01111:name for datafile 1061:

ORA-01110:data file 1061:

ORA-01157:cannot identify/lock data file 1061 -see DBWR trace file

问题分析:

在备用数据库中创建文件为UNNAMED的原因有很多,此次是因为备库上的磁盘空间不足导致的。

STANDBY_FILE_MANAGEMENT 在启用自动备用文件管理后,将在备用数据库上复制主数据库上的操作系统文件添加和删除。此时,我们在主服务器上添加数据文件,而恢复过程(MRP)正在尝试应用存档,由于该参数设置,它将在$ ORACLE_HOME / dbs中创建一个未命名的文件将导致杀死MRP进程,错误如下所示。

当数据库由OMF管理时,修改路径时也可以使用 new 来代替路径的位置,修改 redo 除外。--这个没有验证

复制代码
alter database recover managed standby database cancel;
alter system set standby_file_management=manual;
alter database create datafile  '/oracle/app/oracle/product/19.0.0.0/db_1/dbs/UNNAMED1061′ as  '/+DATAC1/' AS 32760m;
alter system set standby_file_management=auto;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;

执行完后,mrp 进程正常拉起,本次问题解决.

相关推荐
u010914760几秒前
C#怎么使用TopLevel顶级语句 C#顶级语句怎么写如何省略Main方法简化控制台程序【语法】
jvm·数据库·python
Shorasul10 分钟前
Go语言goroutine调度原理_Go语言GMP调度模型教程【高效】
jvm·数据库·python
Absurd58712 分钟前
Navicat导出JSON数据为空如何解决_过滤条件与权限排查
jvm·数据库·python
最好的期待,未来可期12 分钟前
MySQL语法的高级用法CASE WHEN
数据库·mysql
m0_7164300715 分钟前
SQL如何高效统计分类下的多项指标_善用CASE WHEN与SUM聚合
jvm·数据库·python
m0_5887584815 分钟前
PHP源码运行受主板供电影响吗_供电相数重要性说明【技巧】
jvm·数据库·python
qq_4138474017 分钟前
如何处理MongoDB跨分片事务报错_4.2+分布式事务的限制与两阶段提交延迟
jvm·数据库·python
InfinteJustice18 分钟前
HTML函数在超频CPU上更流畅吗_超频对HTML函数影响【技巧】
jvm·数据库·python
AKA__Zas20 分钟前
初识 事务
java·开发语言·数据库·sql
kongba00721 分钟前
2026年4月19日 kimi记忆备份
java·前端·数据库