RAC环境ASM磁盘组在部分节点挂载后新建表空间遇到的查询出错

某用户的RAC ASM磁盘组在部分节点挂载导致,然后创建了测试表空间。结果查询是连至另一节点查询时出错,在所有节点MOUNT ASM磁盘组后,需要进行检查点及CHECK操作,才得到恢复。再次提醒了我们操作需要相关处理如下:
另一次类似的问题(RAC+裸设备)参考;https://blog.csdn.net/haibusuanyun/article/details/104087517
问题:
1)原因:RAC状态仅有节点2挂载磁盘组时加表空间,另一个节点1查询dba_data_files报错ORA-01157 无法标识/锁定数据文件
Alert.log日志内容:
2)现象:节点2从新加的磁盘组DATA02加表空间时,节点1报错如下:
Errors in file /app/oracle/……_dbw0_4490.trc:
ORA-01157: cannot identify/lock data file 284 - see DBWR trace file
ORA-01110: data file 284: '+DATA02/……customs_dat.256.1043495229'
ORA-17503: ksfdopn:2 Failed to open file +DATA02/……_customs_dat.256.1043495229
ORA-15001: diskgroup "DATA02" does not exist or is not mounted
ORA-15001: diskgroup "DATA02" does not exist or is not mounted
 
同时在节点1查询dba_data_files时,查到新加入的数据文件时会报错ORA-01157。但查询v$datafile正常。
 
处理:
1)  使新磁盘组DATA02在节点1变为mount状态
SQL>alter diskgroup DATA02 mount;

再次查询datafiles,报错依旧


问题节点1执行:
SQL> alter system check datafiles; 
System altered.
 
SQL> alter system checkpoint;
System altered.
 
执行完毕后恢复正常,节点1查询dba_data_files正常,无报错。测试在节点1创建之前新建表空间的表,测试正常。

你可能感兴趣的:(ORACLE,故障排查)