给ASM磁盘新增一块盘进去,ASM_DISK2剩余空间四百多G:
SQL> select * from v$asm_diskgroup;
 
GROUP_NUMBER NAME                                                         SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE                  TYPE           TOTAL_MB  FREE_MB REQUIRED_MIRROR_FREE_MB
------------ ------------------------------------------------------------ ----------- ---------- -------------------- ---------------------- ------------ ---------- ---------- -----------------------
USABLE_FILE_MB OFFLINE_DISKS UN COMPATIBILITY
-------------- ------------- -- ------------------------------------------------------------------------------------------------------------------------
DATABASE_COMPATIBILITY
------------------------------------------------------------------------------------------------------------------------
           1 ASM_DISK1                                                            512       4096              1048576 MOUNTED                NORMAL           408613    44641                0
         22320             0 N  10.1.0.0.0
10.1.0.0.0
 
           2 ASM_DISK2                                                            512       4096              1048576 MOUNTED                EXTERN          2890752   421045                0
        421045             0 N  10.1.0.0.0
10.1.0.0.0
 
SQL> 
但是发现在建表空间的时候提示空间不够:
create tablespace HIS_DATA
*
ERROR at line 1:
ORA-01119: error in creating database file
'+ASM_DISK2/orcl/datafile/hisdata017.dbf'
ORA-17502: ksfdcre:4 Failed to create file
+ASM_DISK2/orcl/datafile/hisdata017.dbf
ORA-15041: diskgroup space exhausted
 
这种是典型的ASM磁盘空间假耗尽
 
检查该ASM卷组中每个盘的大小:
SQL> select path,total_mb,free_mb from v$asm_disk_stat;
 
PATH                                                 TOTAL_MB    FREE_MB
-------------------------------------------------- ---------- ----------
/dev/raw/raw5                                             196          0
/dev/raw/raw4                                             196          0
/dev/raw/raw3                                             196          0
/dev/raw/raw2                                             196          0
/dev/raw/raw1                                             196          0
ORCL:VOL1                                              203322      21336
ORCL:VOL2                                              205291      23305
ORCL:VOL3                                             1228800        555
ORCL:VOL4                                             1228800        553
ORCL:VOL5                                              433152     419937
 
10 rows selected.
 
其中3,4,5属于ASM_DISK2 ,可以发现 3 ,4 的空间不够,所以新建数据文件的时候提示空间不够,ASM默认会自动对每个卷组中的盘进行reblance ,使数据平均分布
这时候需要检查参数 ASM_POWER_LIMIT 
 
NAME                                 TYPE
------------------------------------ ----------------------
VALUE
------------------------------
asm_power_limit                      integer
1
SQL> 
 
检查发现该参数为1,继续检查ASM后台是否在做reblance的操作:
 
SQL> select * from v$asm_operation;
 
no rows selected
 
SQL> 
发现并没有在进行reblance,所以导致该ASM卷组空间假装耗尽,调整power值:
 
SQL> alter diskgroup ASM_DISK2 rebalance power 5;
 
Diskgroup altered.
 
SQL> 
调整之后检查发现,还是没有反映:
SQL> select * from v$asm_operation;
 
no rows selected
 
SQL> 
继续调整,使用最大值进行:
alter diskgroup ASM_DISK2 rebalance power 11 wait;
此时发现ASM已经在进程reblance操作:
SQL> select * from v$asm_operation;
 
GROUP_NUMBER OPERATION  STATE         POWER     ACTUAL      SOFAR   EST_WORK
------------ ---------- -------- ---------- ---------- ---------- ----------
  EST_RATE EST_MINUTES
---------- -----------
           2 REBAL      RUN              11         11      20350     350483
      2677         123
 
SQL> 
再检查每个盘的空间情况,可以发现已经在进程reblance操作:
SQL> select path,total_mb,free_mb from v$asm_disk_stat;
 
PATH                                                 TOTAL_MB    FREE_MB
-------------------------------------------------- ---------- ----------
/dev/raw/raw5                                             196          0
/dev/raw/raw4                                             196          0
/dev/raw/raw3                                             196          0
/dev/raw/raw2                                             196          0
/dev/raw/raw1                                             196          0
ORCL:VOL1                                              203322      21336
ORCL:VOL2                                              205291      23305
ORCL:VOL3                                             1228800      13903
ORCL:VOL4                                             1228800      13905
ORCL:VOL5                                              433152     393237
 
10 rows selected.
 
SQL> 
至此,后续的新建数据文件操作一切正常。
 
asm_power_limit参数详解以及ASM其他参数详解 请查看:

一次ASM磁盘空间假装耗尽 ORA-15041: DISKGROUP SPACE EXHAUSTED的更多相关文章

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

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

  2. ASM磁盘组空间不足--ORA-15041:DISGROUP DATA space exhausted (生产库案例)

    原创作品,出自 "深蓝的blog" 博客,深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/47277715 近日 ...

  3. Android Studio模拟器磁盘空间不足(Not enough disk space to run AVD)

    在Android Studio中运行模拟器时,提示Error: Not enough disk space to run AVD '....'. Exiting.是说安装模拟的磁盘空间不足,导致无法运 ...

  4. Linux磁盘空间不足处理方法

    维护Linux服务器正常使用需要经常删除Linux系统运行产生的系统日志和业务环境产生的debug日志文件.安装包等.本文主要描述如何通过脚本实现清理业务环境产生的 debug日志文件和上传或备份的打 ...

  5. Linux磁盘空间被未知资源耗尽【转】

    Linux磁盘空间被未知资源耗尽 在linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间, ...

  6. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.5.安装Grid,创建ASM磁盘组空间不足

    因之前分区时,分区的Last cylinder的值选了“1”,导致创建磁盘组空间不足.解决办法是先删除分区,重新创建分区并删除ASM磁盘,然后重建ASM磁盘 1. 先删除分区,重新创建分区: 1)查询 ...

  7. Linux学习之CentOS(十七)-----释放 Linux 系统预留的硬盘空间 与Linux磁盘空间被未知资源耗尽 (转)

    释放 Linux 系统预留的硬盘空间  大多数文件系统都会保留一部分空间留作紧急情况时用(比如硬盘空间满了),这样能保证有些关键应用(比如数据库)在硬盘满的时候有点余地,不致于马上就 crash,给监 ...

  8. Linux磁盘空间被未知资源耗尽

      在linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间,最后造成磁盘空间占用100%, ...

  9. Linux磁盘空间查看、磁盘被未知资源耗尽

    Linux系统中,当我们使用rm在Linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄, 那么Linux内核还是不会释放这个文件的磁盘空间,最后造成磁盘空间占用100%, ...

随机推荐

  1. SpringBoot入门之基于XML的Mybatis

    上一博客介绍了下SpringBoot基于注解引入Mybatis,今天介绍基于XML引入Mybatis.还是在上一篇demo的基础上进行修改. 一.Maven引入 这个与上一篇的一样,需要引入mybat ...

  2. 控制台安装跟检测Microsoft.Net Framework

    1.检测 每一个版本的.Net Framework的安装过程都会在Windows目录下的\Microsoft.NET\Framework目录中生成一个子目录(安装目录). 比如说,假设Windows目 ...

  3. Transformation和Action

    spark的运算操作有两种类型:分别是Transformation和Action,区别如下:   Transformation:代表的是转化操作就是我们的计算流程,返回是RDD[T],可以是一个链式的 ...

  4. SqlHelper 1.0

    SqlHelper类,可以简化对数据库的操作. 将程序中需要经常用到的数据库操作,如:连接字符串.对数据的增.删.改.查封装成“SqlHelper”类中的静态属性,方便在程序各部分进行调用. 增(in ...

  5. Java使用for循环输出菱形

    /** * This program would print out a diamond * @param row the row of diamond * @version 2018-7-23 * ...

  6. C#多线程——优先级

    在我的公司这里,因为要跟很多特殊的设备打交道,所以会用到多线程的东西,那么我们在进行多线程处理的时候,怎么去设置优先级 我这里用听歌和下载小说做了个例子,我们用电脑的时候肯定是可以边听歌边下载小说的, ...

  7. element-ui select组件中复选时以字符串形式显示

    我使用的element-ui的版本是1.4.13. 如上图所示,使用el-select组件,要实现可搜索.可复选.可创建条目时,展示样式是如上图所示,输入框的高度会撑开,影响页面布局,按照产品的需求, ...

  8. git命令详解( 三 )

    此篇为git命令的第三篇 目录 git Pull 模拟团队合作 Git Pull 在上一篇的结尾我们已经知道了如何用 git fetch 获取远程的数据, 现在我们学习如何将这些变化更新到我们的工作当 ...

  9. 关于input的焦点事件

    关于input的焦点事件 $(".scanf_integral").focus(function(){//获取焦点//获取焦点后触发的事件 }) $(".scanf_in ...

  10. Jni OnLoad()和OnUnload()

    除了前面说的自定义JNI函数之外,JNI还提供了两个特殊函数,它们是JNI_OnLoad()和JNI_OnUnload(),分别在加载库和卸载库的时候调用. 1.JNI_OnLoad() Java调用 ...