记录一次因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 进程正常拉起,本次问题解决.

相关推荐
RestCloud5 小时前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud5 小时前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence7 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
DemonAvenger14 小时前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥1 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud1 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api
得物技术1 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
可涵不会debug2 天前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom2 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
麦兜*2 天前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud