ITPub博客

首页 > 数据库 > Oracle > asm disk redundancy

asm disk redundancy

原创 Oracle 作者:哎呀我的天呐 时间:2017-07-16 20:00:49 0 删除 编辑


CREATE DISKGROUP dgroup1 NORMAL REDUNDANCY
FAILGROUP test1 DISK '/dev/raw/raw5', '/dev/raw/raw6', '/dev/raw/raw7', '/dev/raw/raw8'
FAILGROUP test2 DISK '/dev/raw/raw9', '/dev/raw/raw10', '/dev/raw/raw11', '/dev/raw/raw12';

select disk_kffxp disk#,
XNUM_KFFXP extent#,
case lxn_kffxp
  when 0 then 'Primary Copy'
  when 1 then 'Mirrored Copy'
  when 2 then '2nd Mirrored Copy or metadata'
  else 'Unknown' END TYPE
from x$kffxp
where
number_kffxp=256
and xnum_kffxp!=65534
order by 2;



SQL>   select GROUP_NUMBER,NAME,TOTAL_MB ,FREE_MB , USABLE_FILE_MB from v$asm_diskgroup
GROUP_NUMBER NAME               TOTAL_MB     FREE_MB   USABLE_FILE_MB
------------ ------------------ ---------- ---------- --------------
    1         CRS                 2892         1966          501
    2         DATA                20000        17631         17631
    3         DGROUP1             7840         7640          3330


创建一个3000M的表空间


SQL> select GROUP_NUMBER,NAME,TOTAL_MB ,FREE_MB , USABLE_FILE_MB from v$asm_diskgroup
GROUP_NUMBER    NAME          TOTAL_MB      FREE_MB USABLE_FILE_MB
------------ -------------------- ---------- ---------- --------------
   1         CRS        2892      1966        501
   2         DATA       20000      17631       17631
   3         DGROUP1     7840       1636       328


再创建一个 400m的

SQL> select GROUP_NUMBER,NAME,TOTAL_MB ,FREE_MB , USABLE_FILE_MB from v$asm_diskgroup
GROUP_NUMBER NAME
 TOTAL_MB    FREE_MB USABLE_FILE_MB
------------ ---------------------------------------- ---------- ---------- --------------
    1 CRS             2892       1966   501
    2 DATA          20000      17631  17631
    3 DGROUP1   7840        832    -74

变成了负的了
这里Dave磁盘组的Usable_file_MB 值为 -1116.
 什么意思呢?

TOTAL_MB
Total capacity of the disk group (in megabytes) --它不会考虑到镜像的因素, 是把所有failgroup中所有磁盘的总空间
FREE_MB
Unused capacity of the disk group (in megabytes) --不考虑到mirror因素, 指目前总的可用空间
REQUIRED_MIRROR_FREE_MB
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. 

--为了使diskgroup能在一个或多个磁盘损坏后能够恢复冗余(redundancy),磁盘组中应该保留的剩余空间.

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这个值只是一个在安全范围内能正常使用的空间。


假设我们的磁盘组里有3个failgroup,其中一个failgroup挂掉了, 如果此时使用的空间在这个 Usable_file_MB 以下,那么这个时候ASM能正常的完成rebalance,即这个failgroup上的数据还会转移到其他的failgroup上,继续保证2份的冗余。

如果超过了这个阈值,则会因为空间不足,剩余的failgroup节点无法完成rebalance,那么就表示有一部分数据此时只保留了一份(Normal正常情况下,所有的数据都有两份),并且无法完成rebalance。 这个时候如果另外两个节点中出现了坏盘,那么则有可能导致数据的丢失。

1.png



目前可用空间:839/2=419M

目前可以安全使用的空间:(839-3072 )/2= -1116M

我们计算出的结果,和查询的一致。

<p style="box-sizing:border-box;word-break:break-all;color:#333333;font-family:Arial, " font-size:16px;line-height:30px;white-space:normal;widows:1;background-color:#ffffff;"=""> 所以,当 Free_MB < Req_mir_free_MB, 那么Usable_file_MB   肯定是负值,这种情况下磁盘组如果有一个磁盘失效, 是不能有效恢复成redundancy 的. 即处在" 不安全" 的状态下. 

所以,Usable_file_MB   只是反映了当前" 安全可利用的剩余空间 ",   只要 free_mb 为正 , 就没有问题.

normal 3个failgroup


primary copy 和mirrored copy 肯定不在同一个磁盘组中。


关于lsdg的 -Req_mir_free_MB 和Usable_file_MB讨论帖

from Lunar:

可以使用的总空间(不考虑oracle所说的安全使用的情况)为 Total_MB/2  <--------初始部署时,以这个值来判断容量
目前可以使用的总空间 (不考虑到安全使用)为   Free_MB/2    <---------在使用一段时间后,用这个值来判断可用容量 --(已验证)
可以安全使用的总空间是     (Total_MB-Req_mir_free_MB)/2  
目前可以安全使用的空间是   (Free_MB-Req_mir_free_MB)/2  即Usable_file_MB 的值


Usable_file_MB意味着  
Free_MB < Req_mir_free_MB,即空闲空间小于镜像要求的空余空间, 这会导致 如果丢失磁盘 后将不能 rebalance 。
如果你允许这种情况发生,那么 你可以让Usable_file_MB 仍为负值。

否则:
将部分非必要的文件移出该diskgroup
or
扩容diskgroup空间

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

上一篇: 11g rac 日志
下一篇: 监控脚本
请登录后发表评论 登录
全部评论
https://cloud.tencent.com/developer/inventory/14362

注册时间:2014-10-30

  • 博文量
    403
  • 访问量
    2528932