本指南详细展示了在11gR2版本中如何正确重命名ASM磁盘组的步骤。请注意,在操作过程中,应避免使用renamedg命令来重命名OCR/VOTE磁盘组,以免引起不必要的风险。

  1. 首先,需要卸载想要重命名的磁盘组(如果是RAC配置,则从每个节点上卸载):

    1
    # asmcmd umount <OLD_DG_NAME>
  2. 验证所需的磁盘组是否已卸载:

    1
    2
    3
    4
    # 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 32756 31828 244 15792 0 N <OLD_DG_NAME>_OCR/
    MOUNTED EXTERN N 512 4096 1048576 16378 10134 0 10134 0 N LOB<OLD_DG_NAME>/
  3. 然后执行重命名语句:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    # renamedg phase=both dgname=<OLD_DG_NAME> newdgname=<NEW_DG_NAME> verbose=true
    Parsing parameters..
    Parameters in effect:
    Old DG name : <OLD_DG_NAME>
    New DG name : <NEW_DG_NAME>
    Phases :
    Phase 1
    Phase 2
    Discovery str : (null)
    Clean : TRUE
    Raw only : TRUE
    renamedg operation: phase=both dgname=<OLD_DG_NAME> newdgname=<NEW_DG_NAME> verbose=true
    Executing phase 1
    Discovering the group
    Performing discovery with string:
    Identified disk ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so:ORCL:<DISK_NAME>1 with disk number:0 and timestamp (32925601 -972709888)
    Identified disk ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so:ORCL:<DISK_NAME>2 with disk number:1 and timestamp (32925601 -972709888)
    Identified disk ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so:ORCL:<DISK_NAME>3 with disk number:2 and timestamp (32925601 -972709888)
    Checking for hearbeat...
    Re-discovering the group
    Performing discovery with string:
    Identified disk ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so:ORCL:<DISK_NAME>1 with disk number:0 and timestamp (32925601 -972709888)
    Identified disk ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so:ORCL:<DISK_NAME>2 with disk number:1 and timestamp (32925601 -972709888)
    Identified disk ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so:ORCL:<DISK_NAME>3 with disk number:2 and timestamp (32925601 -972709888)
    Checking if the diskgroup is mounted
    Checking disk number:0
    Checking disk number:1
    Checking disk number:2
    Checking if diskgroup is used by CSS
    Generating configuration file..
    Completed phase 1
    Executing phase 2
    Looking for ORCL:<DISK_NAME>1
    Modifying the header
    Looking for ORCL:<DISK_NAME>2
    Modifying the header
    Looking for ORCL:<DISK_NAME>3
    Modifying the header
    Completed phase 2
    Terminating kgfd context 0x2af21517e0a0

    如果上述命令失败并搜索磁盘,那么我们需要包含磁盘字符串,然后您需要使用

    1
    renamedg phase=both dgname=<OLD_DG_NAME> newdgname=<NEW_DG_NAME> verbose=true asm_diskstring='<discoverystring1>','<discoverystring2>'
  4. 最后,挂载重命名的磁盘组并验证是否已挂载(如果是RAC配置,则在每个节点上进行验证):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    # asmcmd mount <NEW_DG_NAME>
    # 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 32756 31828 244 15792 0 N <OLD_DG_NAME>_OCR/

    MOUNTED EXTERN N 512 4096 1048576 24567 14267 0 14267 0 N <NEW_DG_NAME>/
    MOUNTED EXTERN N 512 4096 1048576 16378 10134 0 10134 0 N LOB<OLD_DG_NAME>/