[javascript] ​​view plain​​​ ​​copy​​  


  1. LINUX 11G RAC ASM磁盘组在线增加磁盘扩容  

  2. 1.操作系统版本 OEL 6.1  
  3. [root@cqltjcpt1 ~]# more /etc/redhat-release   
  4. Red Hat Enterprise Linux Server release 6.1 (Santiago)  


  5. 2.数据库版本 oracle 11g rac  
  6. SQL> select * from v$version;  

  7. BANNER  
  8. --------------------------------------------------------------------------------  
  9. Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production  
  10. PL/SQL Release 11.2.0.3.0 - Production  
  11. CORE    11.2.0.3.0      Production  
  12. TNS for Linux: Version 11.2.0.3.0 - Production  
  13. NLSRTL Version 11.2.0.3.0 - Production  

  14. 3.存储环境VMWARE exsi5.0虚拟EMC存储  


  15. 4.在节点1,2上查看所有系统磁盘  
  16. [root@cqltjcpt1 ~]# fdisk -l | grep sd*  
  17. Disk /dev/sda: 128.8 GB, 128849018880 bytes  
  18. /dev/sda1   *           1          14      103424   83  Linux  
  19. /dev/sda2              14        4191    33554432   82  Linux swap / Solaris  
  20. /dev/sda3            4191       15666    92170240   8e  Linux LVM  
  21. Disk /dev/sdb: 2147 MB, 2147483648 bytes  
  22. /dev/sdb1               1         261     2096451   83  Linux  
  23. Disk /dev/sdc: 2147 MB, 2147483648 bytes  
  24. /dev/sdc1               1         261     2096451   83  Linux  
  25. Disk /dev/sdd: 2147 MB, 2147483648 bytes  
  26. /dev/sdd1               1         261     2096451   83  Linux  
  27. Disk /dev/sde: 536.9 GB, 536870912000 bytes  
  28. /dev/sde1               1       65270   524281243+  83  Linux  
  29. Disk /dev/sdf: 536.9 GB, 536870912000 bytes  
  30. /dev/sdf1               1       65270   524281243+  83  Linux  
  31. Disk /dev/sdg: 536.9 GB, 536870912000 bytes  
  32. /dev/sdg1               1       65270   524281243+  83  Linux  
  33. Disk /dev/sdh: 214.7 GB, 214748364800 bytes  
  34. Disk /dev/sdi: 107.4 GB, 107374182400 bytes  

  35. 5.当前系统硬盘为sda到sdi,现在需要增加一块500G的共享硬盘,来扩容ASM磁盘组,增加新硬盘后系统识别应为sdj  
  36. 查看伪文件系统下的/proc/scsi/scsi文件有scsi1,scsi2,scsi3 三个通道  

  37. [root@cqltjcpt1 ~]# more /proc/scsi/scsi   
  38. Attached devices:  
  39. Host: scsi1 Channel: 00 Id: 00 Lun: 00  
  40.   Vendor: NECVMWar Model: VMware IDE CDR10 Rev: 1.00  
  41.   Type:   CD-ROM                           ANSI  SCSI revision: 05  
  42. Host: scsi2 Channel: 00 Id: 00 Lun: 00  
  43.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  44.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  45. Host: scsi3 Channel: 00 Id: 00 Lun: 00  
  46.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  47.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  48. Host: scsi3 Channel: 00 Id: 01 Lun: 00  
  49.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  50.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  51. Host: scsi3 Channel: 00 Id: 02 Lun: 00  
  52.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  53.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  54. Host: scsi3 Channel: 00 Id: 03 Lun: 00  
  55.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  56.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  57. Host: scsi3 Channel: 00 Id: 04 Lun: 00  
  58.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  59.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  60. Host: scsi3 Channel: 00 Id: 05 Lun: 00  
  61.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  62.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  63. Host: scsi3 Channel: 00 Id: 06 Lun: 00  
  64.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  65.   Type:   Direct-Access                    ANSI  SCSI revision: 02  
  66. Host: scsi3 Channel: 00 Id: 08 Lun: 00  
  67.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  68.   Type:   Direct-Access                    ANSI  SCSI revision: 02  


  69. 6.在节点1,2执行echo 命令,  
  70. [root@cqltjcpt1 ~]# echo "- - -" > /sys/class/scsi_host/host3/scan   

  71. 当前的最大ID号为08,执行完echo命令后,系统的/proc/scsi/scsi文件下会出现ID为09的标识号  
  72. 如下:  

  73. Host: scsi3 Channel: 00 Id: 09 Lun: 00  
  74.   Vendor: VMware   Model: Virtual disk     Rev: 1.0   
  75.   Type:   Direct-Access                    ANSI  SCSI revision: 02  

  76. 7.分别在节点1,2查看/proc/scsi/scsi文件,此时节点1,2已识别到 Host: scsi3 Channel: 00 Id: 09 Lun: 00  

  77. [root@cqltjcpt1 ~]# more /proc/scsi/scsi  | grep  09  
  78. Host: scsi3 Channel: 00 Id: 09 Lun: 00  

  79. [root@cqltjcpt2 ~]# more /proc/scsi/scsi  | grep  09  
  80. Host: scsi3 Channel: 00 Id: 09 Lun: 00  

  81. 8.在节点1上对sdj分区  
  82. [root@cqltjcpt1 ~]#fdisk /dev/sdj  
  83. [root@cqltjcpt1 ~]#partprobe  

  84. 9.节点1,2查看sdj1分区,以后成功识别  

  85. [root@cqltjcpt1 ~]# fdisk -l  | grep  sdj  

  86. Disk /dev/sdj: 536.9 GB, 536870912000 bytes  
  87. /dev/sdj1               1       65270   524281243+  83  Linux  

  88. [root@cqltjcpt2 ~]# fdisk -l  | grep  sdj  

  89. Disk /dev/sdj: 536.9 GB, 536870912000 bytes  
  90. /dev/sdj1   


  91. 10.节点1上用grid用户登录,查看当前ASM磁盘组  
  92. [root@cqltjcpt1 ~]#su - grid  

  93. 查看asm磁盘组  
  94. [grid@cqltjcpt1 ~]$sqlplus / as sysasm  

  95. SQL> select group_number,name,TOTAL_MB, FREE_MB from v$asm_diskgroup  

  96. GROUP_NUMBER NAME               TOTAL_MB    FREE_MB  
  97. ------------ ----------------- ---------- ----------  
  98.            1 CQDATA              1547972    525323  
  99.            2 FRA                 511993     477058  
  100.            3 OCR                 6141       5741  

  101. 11.查看asm磁盘  
  102. [root@cqltjcpt1 ~]# oracleasm listdisks  
  103. DATA1  
  104. DATA2  
  105. FRA  
  106. OCR_VOT1  
  107. OCR_VOT2  
  108. OCR_VOT3  


  109. 12.现在是要将500G的磁盘扩容到CQDATA的ASM的磁盘组中去  
  110. 首先需要创建新的ASM磁盘  

  111. 节点1上执行  
  112. [root@cqltjcpt1 ~]#oracleasm createdisk DATA3 /dev/sdj1  
  113. [root@cqltjcpt1 ~]#oracleasm scandisks  
  114. [root@cqltjcpt1 ~]#oracleasm  listdisks  
  115. DATA1  
  116. DATA2  
  117. DATA3  
  118. FRA  
  119. OCR_VOT1  
  120. OCR_VOT2  
  121. OCR_VOT3  

  122. 节点2上执行  
  123. [root@cqltjcpt2 ~]# oracleasm  scandisks  
  124. Reloading disk partitions: done  
  125. Cleaning any stale ASM disks...  
  126. Scanning system for ASM disks...  
  127. [root@cqltjcpt2 ~]#oracleasm  listdisks  
  128. DATA1  
  129. DATA2  
  130. DATA3  
  131. FRA  
  132. OCR_VOT1  
  133. OCR_VOT2  
  134. OCR_VOT3  

  135.  此时,节点1,2都已经识别到新的ASM磁盘DATA3  

  136. 13.节点1执行,查看ASM磁盘,确定PATH  
  137. [root@cqltjcpt1 ~]# su - grid  
  138. [grid@cqltjcpt1 ~]$ sqlplus  / as sysasm  

  139. SQL> select name, path, mode_status, state, disk_number,failgroup from v$asm_disk;  

  140. NAME        PATH               MODE_STATUS    STATE     DISK_NUMBER FAILGROUP  
  141. --------  ------------------ -------------- ----------- ----------- ----------  
  142. DATA1       ORCL:DATA1           ONLINE         NORMAL                0 DATA1  
  143. DATA2       ORCL:DATA2           ONLINE         NORMAL                1 DATA2  
  144. DATA3       ORCL:DATA3           ONLINE         NORMAL                2 DATA3  
  145. FRA         ORCL:FRA             ONLINE         NORMAL                0 FRA  
  146. OCR_VOT1    ORCL:OCR_VOT1        ONLINE         NORMAL                0 OCR_VOT1  
  147. OCR_VOT2    ORCL:OCR_VOT2        ONLINE         NORMAL                1 OCR_VOT2  


  148. 14.在节点1上,grid用户已sysasm登录ASM实例,给CQDATA磁盘组增加新的ASM磁盘DATA3  

  149. SQL> alter diskgroup CQDATA  add disk  'ORCL:DATA3' rebalance power 10;  

  150. GROUP_NUMBER OPERATION  STATE         POWER     ACTUAL      SOFAR   EST_WORK   EST_RATE EST_MINUTES ERROR_CODE  
  151. ------------ ---------- -------- ---------- ---------- ---------- ---------- ---------- ----------- ----------  
  152.            1 REBAL      RUN               1          1     130396     340324       1224         171  

  153. 查看当前reblance 时间,500G 需要1小时左右  
  154. SQL>select * from v$asm_opration;  

  155. GROUP_NUMBER OPERATION  STATE         POWER     ACTUAL      SOFAR   EST_WORK   EST_RATE EST_MINUTES ERROR_CODE  
  156. ------------ ---------- -------- ---------- ---------- ---------- ---------- ---------- ----------- ------------------------------  
  157.            1 REBAL      RUN               1          1      13327     332978       1242         57  

  158. 15.当查询v$asm_operation时无数据输出时,意味着ASM的reblance动作结束  
  159. SQL> select * from v$asm_operation;  

  160. no rows selected  

  161. 修改reblance 参数为默认   

  162. SQL> ALTER DISKGROUP DATA1 REBALANCE POWER 1;  



  163. 16.在节点1,2上分别查询,以下结果  

  164. SQL> SELECT,NAME,FREE_MB,TOTAL_MB FROM V$ASM_DISKGROUP  

  165. NAME                    FREE_MB   TOTAL_MB  
  166. -------------------- ---------- ----------  
  167. CQDATA                   1025323    2047972  
  168. FRA                      477058     511993  
  169. OCR                        5741       6141  

  170. CQDATA磁盘组已经成功完成扩容  本文基于VMware下测试,存储多路径问题在本实验已被vmware忽略,若有遗漏或不明处欢迎拍砖