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

相关推荐
努力学习的小廉2 分钟前
初识MYSQL —— 基本查询
数据库·mysql·1024程序员节
许泽宇的技术分享12 分钟前
让数据库“听懂“人话:Text2Sql.Net 深度技术解析
数据库·.net
珊珊而川1 小时前
MAC-SQL 算法一
数据库·sql·oracle
听风吟丶1 小时前
深入解析 Spring Boot 自动配置:原理、实践与进阶
java·数据库·sql
风语者日志1 小时前
[LitCTF 2023]这是什么?SQL !注一下 !
android·数据库·sql
lang201509281 小时前
Spring Boot 核心技巧与实战指南
java·数据库·spring boot
呆呆小金人3 小时前
SQL视图:虚拟表的完整指南
大数据·数据库·数据仓库·sql·数据库开发·etl·etl工程师
笨手笨脚の3 小时前
Mysql 读书笔记
数据库·mysql·事务·索引·orderby·自增主键
码力引擎3 小时前
【零基础学MySQL】第四章:DDL详解
数据库·mysql·1024程序员节
程序新视界3 小时前
MySQL的隔离级别及其工作原理详解
数据库·后端·mysql