加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

如何查询   ASM磁盘组由哪些物理磁盘组成  及文件大小空闲空间?

(2011-04-29 11:55:12)
标签:

杂谈

分类: RAC
http://www.itpub.net/thread-1424589-2-1.html

我们知道用下面的方法可创建 ASM 磁盘,然后再创建逻辑的ASM组

以 root 用户身份创建 ASM 磁盘。
# /etc/init.d/oracleasm createdisk VOL1 /dev/sdc1
Marking disk "/dev/sdc1" as an ASM disk:                   OK  ]
# /etc/init.d/oracleasm createdisk VOL2 /dev/sdd1
Marking disk "/dev/sdd1" as an ASM disk:                   OK  ]
# /etc/init.d/oracleasm createdisk VOL3 /dev/sde1
Marking disk "/dev/sde1" as an ASM disk:                   OK  ]
Verify that the ASM disks are visible from every node.
# /etc/init.d/oracleasm scandisks
Scanning system for ASM disks:                      OK  ]
# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3

但是我问题是,如果通过ASM磁盘或是磁盘组找到ASM磁盘对应的物理磁盘呢?
也就是上面方法的反向查询,因为有些时候ASM磁盘是由以前管理员创建,新的管理员要对以前系统存储进行查询了解。
比如:现在知道ASM磁盘组+DATA由VOL1、VOL2组成,现在我想知道VOL1和VOL2分别是哪些物理磁盘(VOL1对应/dev/sdc1,VOL2对应VOL2 /dev/sdd1)组成的?

##############  终极命令  ##################
kfod -h命令帮助
kfod d=all命令


你说的那个物理路径是ASM磁盘
SQL> Select Name,path From v$asm_disk;

NAME                           PATH
------------------------------ --------------------------------------------------------------------------------
V1                             ORCL:V1
V2                             ORCL:V2

我想这是我想要的:

[root@webdbb ~]# oracleasm querydisk V1
Disk "V1" is a valid ASM disk
[root@webdbb ~]# oracleasm querydisk /dev/sdf1
Device "/dev/sdf1" is marked an ASM disk with the label "V5"
[root@webdbb ~]# oracleasm querydisk /dev/sde1
Device "/dev/sde1" is marked an ASM disk with the label "V4"


不用那么复杂,操作系统的命令就搞定了:
#/etc/init.d/oracleasm querydisk VOLDB
Disk "VOLDB" is a valid ASM disk on device [8, 33]
#ll /dev/sd*1
brw-r----- 1 root disk 8,  1 Apr 12 16:38 /dev/sda1
brw-r----- 1 root disk 8, 17 Apr 12 16:39 /dev/sdb1
brw-r----- 1 root disk 8, 33 Apr 12 16:39 /dev/sdc1
brw-r----- 1 root disk 8, 49 Apr 12 16:39 /dev/sdd1

我的例子中8, 33是sdc1


[root@rthb1 ~]# /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks: [  OK  ]
[root@rthb1 ~]# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
VOL4
[root@rthb1 ~]# /etc/init.d/oracleasm querydisk VOL1
Disk "VOL1" is a valid ASM disk
[root@rthb1 ~]# /etc/init.d/oracleasm querydisk -d VOL1
Disk "VOL1" is a valid ASM disk on device [8, 113]
[root@rthb1 ~]#
[root@rthb1 ~]#
[root@rthb1 ~]# ls -l /dev/s*1
brw-r----- 1 root disk  8,   1 03-25 13:04 /dev/sda1
brw-r----- 1 root disk  8,  17 03-25 13:04 /dev/sdb1
brw-r----- 1 root disk  8,  33 03-25 13:04 /dev/sdc1
brw-r----- 1 root disk  8,  49 03-25 13:04 /dev/sdd1
brw-r----- 1 root disk  8,  65 03-25 13:04 /dev/sde1
brw-r----- 1 root disk  8,  81 03-25 13:04 /dev/sdf1
brw-r----- 1 root disk  8,  97 04-29 11:46 /dev/sdg1
brw-r----- 1 root disk  8, 113 03-25 13:04 /dev/sdh1
brw-r----- 1 root disk  8, 129 03-25 13:04 /dev/sdi1
brw-r----- 1 root disk  8, 145 03-25 13:04 /dev/sdj1
brw-r----- 1 root disk  8, 161 03-25 13:04 /dev/sdk1
brw-r----- 1 root disk  8, 177 04-29 11:46 /dev/sdl1
crw------- 1 root root 21,   1 03-25 13:03 /dev/sg1
crw------- 1 root root 21,  11 03-25 13:03 /dev/sg11


数据文件V$DATAFILE不是有啊?
SQL> select BYTES,NAME from v$datafile;

     BYTES NAME
---------- --------------------------------------------------------------------------------
461373440 +TEST/testasm/system01.dbf
  26214400 +TEST/testasm/undotbs01.dbf
314572800 +TEST/testasm/sysaux01.dbf
   5242880 +TEST/testasm/users01.dbf
  26214400 +TEST/testasm/undotbs02.dbf

查看剩余空间使用
SQL> select USABLE_FILE_MB,TOTAL_MB,FREE_MB from v$asm_diskgroup;

USABLE_FILE_MB   TOTAL_MB    FREE_MB
-------------- ---------- ----------
          3223       4682       3223
USABLE_FILE_MB 是实际的剩余空间
TOTAL_MB     磁盘总的大小如果你有3个盘160M一个 那就是3*160M 不管冗余度
FREE_MB     剩余的空间,不管冗余度,在外部冗余情况下FREE_MB  =USABLE_FILE_MB 普通冗余USABLE_FILE_MB=FREE_MB/2
高冗余 USABLE_FILE_MB=FREE_MB/3

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有