meta données pour cette page
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| oracle:asm:migrate_diskgroup_disk [26/10/2025 15:18] – mdl | oracle:asm:migrate_diskgroup_disk [26/10/2025 20:05] (Version actuelle) – mdl | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Migrer les données d'un diskgroup ====== | ====== Migrer les données d'un diskgroup ====== | ||
| - | == Diskgroup redondance normale == | + | == 1/ Diskgroup redondance normale == |
| - | Il s'agit du diskgroup **DATA** avec redondance | + | Il s'agit du diskgroup **DATA** avec redondance |
| * Afficher l' | * Afficher l' | ||
| Ligne 61: | Ligne 61: | ||
| </ | </ | ||
| - | Les opérations ORACLEASM se font en ROOT | + | * Les opérations ORACLEASM se font en **ROOT** |
| - | Les autre opérations se font en grid | + | |
| Ligne 73: | Ligne 73: | ||
| [root@oracle2 bin]# oracleasm createdisk ASM_DATA5 /dev/sdi1 | [root@oracle2 bin]# oracleasm createdisk ASM_DATA5 /dev/sdi1 | ||
| [root@oracle2 bin]# oracleasm createdisk ASM_DATA6 /dev/sdj1 | [root@oracle2 bin]# oracleasm createdisk ASM_DATA6 /dev/sdj1 | ||
| + | </ | ||
| + | |||
| + | |||
| + | * on rafraichi les disques ASM sur l' | ||
| + | <code BASH> | ||
| + | [root@oracle3 ~]# oracleasm scandisks | ||
| + | Reloading disk partitions: done | ||
| + | Cleaning any stale ASM disks... | ||
| + | Scanning system for ASM disks... | ||
| + | Instantiating disk " | ||
| + | Instantiating disk " | ||
| + | Instantiating disk " | ||
| + | [root@oracle3 ~]# | ||
| + | [root@oracle3 ~]# | ||
| + | [root@oracle3 ~]# oracleasm listdisks | ||
| + | ASM_DATA1 | ||
| + | ASM_DATA2 | ||
| + | ASM_DATA3 | ||
| + | ASM_DATA4 | ||
| + | ASM_DATA5 | ||
| + | ASM_DATA6 | ||
| + | ASM_FRA1 | ||
| + | ASM_FRA2 | ||
| + | ASM_OCR1 | ||
| + | ASM_OCR2 | ||
| + | ASM_OCR3 | ||
| + | |||
| </ | </ | ||
| Ligne 102: | Ligne 129: | ||
| </ | </ | ||
| - | + | ||
| - | <code PLSQL> | + | |
| - | SQL> | + | |
| - | set lines 1000 | + | |
| - | col PATH format A50 | + | |
| - | col FAILGROUP_TYPE format A20 | + | |
| - | select PATH, | + | |
| - | + | ||
| - | PATH | + | |
| - | -------------------------------------------------- ------- ------- -------- ------- ---------- ---------- -------------------- | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | / | + | |
| - | + | ||
| - | 10 rows selected. | + | |
| - | </ | + | |
| Ligne 220: | Ligne 225: | ||
| 10 rows selected. | 10 rows selected. | ||
| - | </ | ||
| - | <code PLSQL> | + | |
| alter diskgroup DATA drop disk DATA_0002, | alter diskgroup DATA drop disk DATA_0002, | ||
| </ | </ | ||
| Ligne 253: | Ligne 258: | ||
| SQL> select * from v$asm_operation; | SQL> select * from v$asm_operation; | ||
| no rows selected | no rows selected | ||
| + | </ | ||
| * une fois terminé, les disques enlevés sont en **MOUNT_STATE=CLOSED** | * une fois terminé, les disques enlevés sont en **MOUNT_STATE=CLOSED** | ||
| + | <code PLSQL> | ||
| SQL> set lines 1000 | SQL> set lines 1000 | ||
| col PATH format A50 | col PATH format A50 | ||
| col FAILGROUP_TYPE format A20 | col FAILGROUP_TYPE format A20 | ||
| - | select PATH, | + | select PATH, |
| PATH | PATH | ||
| Ligne 326: | Ligne 332: | ||
| </ | </ | ||
| + | |||
| + | == 2/ Diskgroup redondance external == | ||
| + | Il s'agit du diskgroup **FRA** avec redondance // | ||
| + | |||
| + | * Afficher l' | ||
| + | <code PLSQL> | ||
| + | SQL> | ||
| + | SET lines 800 | ||
| + | column disk_group_name format a30 | ||
| + | column PATH format a50 | ||
| + | column disk_file_name format a30 | ||
| + | column FAILGROUP_TYPE format a20 | ||
| + | SELECT NVL(a.name, ' | ||
| + | FROM v$asm_diskgroup a RIGHT OUTER JOIN v$asm_disk b USING (group_number) | ||
| + | ORDER BY a.name; | ||
| + | |||
| + | |||
| + | DISK_GROUP_NAME | ||
| + | ------------------------------ -------------------------------------------------- ------------------------------ ------ | ||
| + | DATA | ||
| + | DATA | ||
| + | DATA | ||
| + | FRA | ||
| + | OCR | ||
| + | OCR | ||
| + | OCR | ||
| + | |||
| + | </ | ||
| + | |||
| + | * Afficher l' | ||
| + | <code PLSQL> | ||
| + | SQL> | ||
| + | set lines 1000 | ||
| + | column " | ||
| + | column " | ||
| + | column " | ||
| + | column " | ||
| + | column " | ||
| + | column " | ||
| + | SELECT g.name " | ||
| + | 100*(max((d.total_mb-d.free_mb)/ | ||
| + | 100*(max(d.total_mb)-min(d.total_mb))/ | ||
| + | 100*(min(d.free_mb/ | ||
| + | count(*) " | ||
| + | g.type " | ||
| + | FROM v$asm_disk d, v$asm_diskgroup g | ||
| + | WHERE d.group_number = g.group_number and | ||
| + | d.group_number <> 0 and | ||
| + | d.state = ' | ||
| + | d.mount_status = ' | ||
| + | GROUP BY g.name, g.type; | ||
| + | |||
| + | |||
| + | | ||
| + | Percent Disk Size Percent | ||
| + | Diskgroup | ||
| + | ------------------------------ --------- --------- ------- ----- ---------- | ||
| + | FRA | ||
| + | OCR | ||
| + | DATA | ||
| + | </ | ||
| + | |||
| + | |||
| + | * initialisation ASM: | ||
| + | <code BASH> | ||
| + | [root@oracle2 bin]# oracleasm createdisk ASM_FRA2 /dev/sdk1 | ||
| + | Writing disk header: done | ||
| + | Instantiating disk: done | ||
| + | |||
| + | [root@oracle2 bin]# oracleasm listdisks | ||
| + | ASM_DATA1 | ||
| + | ASM_DATA2 | ||
| + | ASM_DATA3 | ||
| + | ASM_DATA4 | ||
| + | ASM_DATA5 | ||
| + | ASM_DATA6 | ||
| + | ASM_FRA1 | ||
| + | ASM_FRA2 | ||
| + | ASM_OCR1 | ||
| + | ASM_OCR2 | ||
| + | ASM_OCR3 | ||
| + | |||
| + | </ | ||
| + | |||
| + | * on rafraichi les disques ASM sur l' | ||
| + | <code BASH> | ||
| + | [root@oracle3 ~]# oracleasm scandisks | ||
| + | Reloading disk partitions: done | ||
| + | Cleaning any stale ASM disks... | ||
| + | Scanning system for ASM disks... | ||
| + | Instantiating disk " | ||
| + | [root@oracle3 ~]# | ||
| + | [root@oracle3 ~]# | ||
| + | [root@oracle3 ~]# oracleasm listdisks | ||
| + | ASM_DATA4 | ||
| + | ASM_DATA5 | ||
| + | ASM_DATA6 | ||
| + | ASM_FRA1 | ||
| + | ASM_FRA2 | ||
| + | ASM_OCR1 | ||
| + | ASM_OCR2 | ||
| + | ASM_OCR3 | ||
| + | |||
| + | </ | ||
| + | |||
| + | * vérification de la disponibilité dans ASM | ||
| + | <code PLSQL> | ||
| + | SQL> | ||
| + | set lines 800 | ||
| + | col disk_file_path format A40 | ||
| + | SELECT a.name disk_group_name | ||
| + | , b.path disk_file_path | ||
| + | , b.name disk_file_name | ||
| + | , b.failgroup disk_file_fail_group | ||
| + | FROM v$asm_diskgroup a RIGHT OUTER JOIN v$asm_disk b USING (group_number) | ||
| + | ORDER BY a.name; | ||
| + | |||
| + | DISK_GROUP_NAME | ||
| + | ------------------------------ ---------------------------------------- ------------------------------ ------------------------------ | ||
| + | DATA | ||
| + | DATA | ||
| + | DATA | ||
| + | FRA | ||
| + | OCR | ||
| + | OCR | ||
| + | OCR | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | * ajout au Diskgroup **FRA** et // | ||
| + | |||
| + | <code PLSQL> | ||
| + | SQL> alter diskgroup FRA add disk '/ | ||
| + | |||
| + | Diskgroup altered. | ||
| + | </ | ||
| + | |||
| + | |||
| + | * suivi de l' | ||
| + | <code PLSQL> | ||
| + | SQL> select * from v$asm_operation; | ||
| + | |||
| + | GROUP_NUMBER OPERA PASS STAT POWER ACTUAL | ||
| + | ------------ ----- --------- ---- ---------- ---------- ---------- ---------- ---------- ----------- -------------------------------------------- ---------- | ||
| + | 2 REBAL COMPACT | ||
| + | 2 REBAL REBALANCE DONE 20 | ||
| + | 2 REBAL REBUILD | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | * suppression du disque du DISKGROUP | ||
| + | <code PLSQL> | ||
| + | ALTER diskgroup FRA DROP disk FRA_0000 rebalance POWER 50; | ||
| + | |||
| + | Diskgroup altered. | ||
| + | |||
| + | </ | ||
| + | |||
| + | suivi de la suppression | ||
| + | <code PLSQL> | ||
| + | SQL> select * from v$asm_operation; | ||
| + | |||
| + | GROUP_NUMBER OPERA PASS STAT POWER ACTUAL | ||
| + | ------------ ----- --------- ---- ---------- ---------- ---------- ---------- ---------- ----------- -------------------------------------------- ---------- | ||
| + | 2 REBAL COMPACT | ||
| + | 2 REBAL REBALANCE RUN 50 | ||
| + | 2 REBAL REBUILD | ||
| + | </ | ||
| + | |||
| + | |||
| + | * une fois terminé, le disque a supprimer n'est plus membre d'un diskgroup | ||
| + | <code PLSQL> | ||
| + | SQL> set lines 800 | ||
| + | col disk_file_path format A40 | ||
| + | SELECT a.name disk_group_name | ||
| + | , b.path disk_file_path | ||
| + | , b.name disk_file_name | ||
| + | , b.failgroup disk_file_fail_group | ||
| + | FROM v$asm_diskgroup a RIGHT OUTER JOIN v$asm_disk b USING (groSQL> SQL> | ||
| + | ORDER BY a.name; | ||
| + | |||
| + | DISK_GROUP_NAME | ||
| + | ------------------------------ ---------------------------------------- ------------------------------ ------------------------------ | ||
| + | DATA | ||
| + | DATA | ||
| + | DATA | ||
| + | FRA | ||
| + | OCR | ||
| + | OCR | ||
| + | OCR | ||
| + | / | ||
| + | |||
| + | 8 rows selected. | ||
| + | </ | ||
| + | |||
| + | * une fois terminé, suppression du disque d'ASM | ||
| + | <code BASH> | ||
| + | [root@oracle2 bin]# oracleasm deletedisk ASM_FRA1 | ||
| + | Clearing disk header: done | ||
| + | Dropping disk: done | ||
| + | |||
| + | |||
| + | [root@oracle2 bin]# oracleasm listdisks | ||
| + | ASM_DATA4 | ||
| + | ASM_DATA5 | ||
| + | ASM_DATA6 | ||
| + | ASM_FRA2 | ||
| + | ASM_OCR1 | ||
| + | ASM_OCR2 | ||
| + | ASM_OCR3 | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | * on rafraichi sur l' | ||
| + | <code BASH> | ||
| + | [root@oracle3 ~]# oracleasm scandisks | ||
| + | Reloading disk partitions: done | ||
| + | Cleaning any stale ASM disks... | ||
| + | Cleaning disk " | ||
| + | Scanning system for ASM disks... | ||
| + | |||
| + | |||
| + | [root@oracle3 ~]# oracleasm listdisks | ||
| + | ASM_DATA4 | ||
| + | ASM_DATA5 | ||
| + | ASM_DATA6 | ||
| + | ASM_FRA2 | ||
| + | ASM_OCR1 | ||
| + | ASM_OCR2 | ||
| + | ASM_OCR3 | ||
| + | |||
| + | </ | ||