一个DATAGUARD,当主库RESIZE扩大一个数据文件后,DG上面却不能应用这个RESIZE的操作,导致MPR进程停掉,报错如下:
ORA-01237: cannot extend datafile 123
ORA-01110: data file 516: '+DG01/dg/datafile/aa.276.689185035'
ORA-17505: ksfdrsz:1 Failed to resize file to size 3053300 blocks
ORA-15041: diskgroup space exhausted
本来想这个错误太明显了,无非是因为DG上面得ASM组没有空闲空间了,导致数据文件不能扩展。于是登陆ASM实例,查询空闲空间,结果如下:
SQL> select name,total_mb,free_mb from v$asm_diskgroup;

NAME TOTAL_MB FREE_MB
------------------------------ ---------- ----------
DG01 5209505 884073
DG02 1023994 988091
也就是说DG01命名还有将近900G的空间,却给我说空间不够了,这下抓瞎啦,见鬼的问题来了

第一反应就是这肯定是个BUG!登陆ML开始狂搜,结果发现碰到类似问题的人太多了,而且ASM类似的BUG也是一大堆,没眉目了。其中一个最引起注意的是这么一个地方(ML:389877.1),大概意思就是说:
一般我们都是去V$ASM_DISKGROUP或者V$ASM_DISK中来查看ASM组总共有多少空间,还剩余了多少空间,大多数情况下呢,这个数字是准确的,但是有时候呢,ORACLE会忽悠你!ASM中记录这些空间使用信息的地方有两个,上面只是其中一个地方(叫disk directory),还有另外一个地方(allocation tables)。那么当你在RESIZE的时候呢,如果这个RESIZE失败了,那么DIRECTORY中的数字是不会更新的,这是对的,因为本来空间就没分配成功嘛,但是,ALLOCATION TABLE是会更新的,所以就导致了你从V$ASM_DISKGROUP中看到有很多空间信息,但是干着急就是没法用。那么怎么确认是否有这种问题存在呢?

select group_number,file_number,bytes,space from v$asm_file,在这个SQL的返回结果中,BYTES是数据文件实际的大小,而SPACE是数据文件占用的ASM空间的大小,而ASM磁盘有三种冗余方式,分别是EXTERNAL/NORMAL/HIGH,这三种情况下,SPACE分别应该是BYTES的1倍(也就是基本相等)、两倍和三倍。如果某些数据文件不符合上面这个对应关系,那就应该是你撞上这个问题了。可是查下来这个问题在我这里不存在,SPACE确实比BYTES大,但都只是大了一点点。(对于上面这种情况,ML上面的做法是先把这个文件OFFLINE,然后备份,然后删除,然后再RESTORE回来,然后再RECOVER,然后再ONLINE,这样就OK了)

后来无头苍蝇一样乱撞吧,挨个看看v$asm开头的视图,结果看到v$asm_disk_stats的时候发现了问题。
select path,total_mb,free_mb from v$asm_disk_stat;
执行这个查询的时候,发现大多数些卷FREE_MB为0了,而有一个卷却有将近900G空闲空间。后来想起来了,当初RMAN复制这个库的时候,因为库正在恢复的时候发现空间很紧张,就加了1T空间上去,然后POWER为5开始REBALANCE,后来发现RMAN的复制很慢,就把REBALANCE POWER改成0了,复制完把这茬给忘了,结果一直都没有REBALANCE(本来想着系统自己的REBALANCE POWER设置为1,它自己会慢慢的REBALANCE的),从而导致了今天的问题。

最终,开始POWER 11的REBALANCE,等每个卷都有不少空间空间的时候开始恢复,报错的地方已经能够过去了,剩下的就是慢慢等着恢复和REBALANCE就是了

ASM磁盘空间假装耗尽,ORA-15041: diskgroup space exhausted相关推荐

  1. oracle asm磁盘回收步骤,【翻译自mos文章】回收 asm磁盘空间的方法

    回收 asm磁盘空间的方法 参考原文: How To Reclaim Asm Disk Space? (Doc ID 351866.1) 适用于: Oracle Database - Enterpri ...

  2. linux下asm磁盘查看,ASM磁盘空间的查看

    ASM磁盘空间查看可以通过操作系统查看,也可以在sqlplus里面进行查看 [1]操作系统中查看的方法 [grid@db01 ~]$ asmcmd ASMCMD> lsdg State      ...

  3. oracle查asm磁盘使用,如何检查ASM磁盘空间使用情况

    日常我们检查ASM磁盘空间通过如下: export Oracle_SID=+ASM1 通过检查v$asm_diskgoup视图可以检查磁盘组空间的使用情况,如下: SQL> select gro ...

  4. ORA-15260 diskgroup space exhausted Problem

    系统:WINDOWS 2008 R2 企业版 数据库:11.2.0.1 RAC 在对数据库进行写入和创建表空间的时候,数据库会报ORA-15260 diskgroup space exhausted ...

  5. mysql 磁盘组_有效管理 ASM 磁盘组空间

    ORA-15041: diskgroup space exhausted 对您的数据库环境的直接和间接影响?与 ASM 磁盘组相关的磁盘空间问题和 ORA-15041 错误会 ORA-15041: d ...

  6. ASM磁盘介绍及PIGOSS BSM支持ASM磁盘监控

    一.查看ASM磁盘空间使用情况 命令行查看:asmcmd lsdg 视图中查看:v$asm_diskgroup 二.参数详解 TOTAL_MB 磁盘组的总容量(单位:以兆字节计) FREE_MB 磁盘 ...

  7. oracle asm ora 15041,ORA-15041,ORA-01274 故障解决实例

    上周五去客户处巡检时,发现原来配置的DG备库未与主库同步,特此记录一下 在5月14日13:58出现故障,3398日志无法应用,以下是alert日志 Thu May 14 13:58:01 2015 E ...

  8. 监视Oracle ASM磁盘组上的空间使用情况(空闲和已用)

    监视Oracle ASM磁盘组上的空间使用情况(空闲和已用) sqlplus: SELECT name, free_mb, total_mb, free_mb/total_mb*100 as perc ...

  9. ORACLE 11G RAC ASM磁盘全部丢失后的恢复

    故障描述 (1)存储故障导致ASM磁盘丢失. (2)CRS因为OCR和VOTEDISK的丢失,除了OHAS还联机外,CLUSTERWARE服务都已经停止 操作步骤 一.恢复OCR和VOTEDISK ( ...

最新文章

  1. Zend Framework 跳转方法(render, forward, redirect)区...
  2. ML之RF:利用Js语言设计随机森林算法【DT之CART算法(gain index)】并应用随机森林算法
  3. 在CentOS 6.3中安装与配置JDK-7
  4. Flink的状态一致性
  5. mysql 1418 存储过程_MySQL自定义函数 1418报错
  6. PCL之点云分割算法概述
  7. 搭建CentOS的本地yum源
  8. 拉式工序不允许倒冲财务仓
  9. nmap命令教程详解
  10. 单片机c语言双边拉幕灯,51单片机C语言入门教程
  11. 深度学习论文: Slicing Aided Hyper Inference and Fine-tuning for Small Object Detection及其PyTorch实现
  12. CVPR2022论文速递(2022.4.12)!共24篇!GAN/transformer/超分等
  13. PG-FP6烧录机1拖16上位机项目
  14. 安全驾驶-调整后视镜(六)
  15. 遗传算法优化BP神经网络,bp神经网络的优化算法
  16. Latex小写字母花体方法
  17. CF949D Curfew solution
  18. AtCoder Beginner Contest 164 E Two Currencies【最短路】
  19. 戴尔游匣5577黑苹果EFI文件
  20. 1977年图灵奖--约翰·巴克斯简介

热门文章

  1. 【听】特斯拉传,科学超人传奇
  2. JS实现小方块上下移动
  3. 闲鱼项目玩法实战,做闲鱼一定要知道的卖货技巧!
  4. nginx整合fastdfs出现2个master进程没有worker进程的原因以及解决方法
  5. MD5加密解密算法 MD5Utils
  6. tp5设置参数全局过滤
  7. 基于MATLAB-GUI数字图像的水果边缘检测
  8. 无线华为能连苹果不能连接到服务器,华为手机连苹果Mac,连不上?手把手教你...
  9. Super expression must either be null or a function错误
  10. 模式识别 | PRML概览