ITPub博客

首页 > 数据库 > Oracle > asm的Usable_file_MB 出现负值说明

asm的Usable_file_MB 出现负值说明

原创 Oracle 作者:zhenglinsong 时间:2016-04-23 12:19:23 0 删除 编辑

grid@rac1:/home/grid>asmcmd lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  NORMAL  N         512   4096  1048576      9216     8281             3072            2604              0             Y  OCRVOTE/
MOUNTED  NORMAL  N         512   4096  1048576    456704   347918                0          173959              2             N  REDODG/
MOUNTED  NORMAL  N         512   4096  1048576  12102656  3596985          4110336         -256675              0             N  DATADG/


看到 Usable_file_MB 该值为负数 是不是比较奇怪。
通过查询联机文档 具体解释如下:


Req_mir_free_MB NUMBER Amount of space that is required to be available in a given disk group
in order to restore redundancy after one or more disk failures. The amount of space displayed in this
column takes mirroring effects into account.
Req_mir_free_MB:考虑镜像需要的空闲空间,一般约等于一个FailGroup的大小。
如果一个磁盘组里FailGroup大小不一样,ORACLE会取最大的FailGroup作为Req_mir_free_MB的值。Free_MB代表了真正剩余空间,包含了镜像块在里面。
因此真正可用的FREE空间等于 Free_MB/冗余度(当前希望你的每个FG大小基本相等,否则可用空间就不是这么算了)

Usable_file_MB Amount of free space that can be safely utilized taking mirroring
 into account and yet be able to restore redundancy after a disk failure
Usable_file_MB的计算方法为:
Usable_file_MB=(Free_MB-Req_mir_free_MB)/冗余度
从上面的公式可以看出如果Free_MB的大小小于磁盘组最大的一个FailGroup大小的话,值就会出现负数。出现负数后,非常可能一个
FailGroup毁坏后剩余的DG空间不再满足对于mirror/rebalance的要求。如果想看磁盘组剩余空间的话,主要关注FREE_MB的值就可以了。


列举说明 :
当创建一个创建组 ,该组使用normal 的冗余方式,该组包括3个failgroup且3个failgroup一样大。
那么当该磁盘组可用容量占比总容量小于33.3%,那么这个时候该值会出现负值 。
大概公式如下 :
Usable_file_MB=(Free_MB-Req_mir_free_MB)/冗余度

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31134212/viewspace-2086568/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: sql profile迁移
请登录后发表评论 登录
全部评论

注册时间:2016-04-21

  • 博文量
    29
  • 访问量
    41416