在Solaris平臺中ASM所需磁碟的Format過程

kuqlan發表於2014-06-30

近期在增加ASM磁碟過程中遇到如下錯誤:

SQL> alter diskgroup datadg add disk '/dev/rac/DBdg01' rebalance power 0;
alter diskgroup datadg add disk '/dev/rac/DBdg01' rebalance power 0
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15031: disk specification '/dev/rac/DBdg01' matches no disks
ORA-15025: could not open disk '/dev/rac/DBdg01'
ORA-15056: additional error message
SVR4 Error: 13: Permission denied
Additional information: 42
Additional information: –1897261352

 

經過兩天排查,最終的處理方法歸結為在OS環境透過Format命令格式化分割槽時如下的0號分割槽沒有留空間,6號區從0號Cylinders 開始導致的。

Part Tag Flag Cylinders Size Blocks
0 root wm 0 - 4 117.66MB (5/0/0) 240975


具體處理過程如下:

 

bash-3.00# format
Searching for disks...done

c3t6000B5D0006A0000006A10C100080000d0: configured with capacity of 1023.95GB
c3t6000B5D0006A0000006A10C100090000d0: configured with capacity of 279.87GB


AVAILABLE DISK SELECTIONS:
.....
       6. c3t6000B5D0006A0000006A10C100040000d0
          /scsi_vhci/ssd@g6000b5d0006a0000006a10c100040000
       7. c3t6000B5D0006A0000006A10C100050000d0
          /scsi_vhci/ssd@g6000b5d0006a0000006a10c100050000

.....


Specify disk (enter its number): 7  
selecting c3t6000B5D0006A0000006A10C100050000d0
[disk formatted]


FORMAT MENU:
        disk       - select a disk
        type       - select (define) a disk type
        partition  - select (define) a partition table
        current    - describe the current disk
        format     - format and analyze the disk
        repair     - repair a defective sector
        label      - write label to the disk
        analyze    - surface analysis
        defect     - defect list management
        backup     - search for backup labels
        verify     - read and display labels
        save       - save new disk/partition definitions
        inquiry    - show vendor, product and revision
        volname    - set 8-character volume name
        !     - execute , then return
        quit
format> p


PARTITION MENU:
        0      - change `0' partition
        1      - change `1' partition
        2      - change `2' partition
        3      - change `3' partition
        4      - change `4' partition
        5      - change `5' partition
        6      - change `6' partition
        7      - change `7' partition
        select - select a predefined table
        modify - modify a predefined partition table
        name   - name the current table
        print  - display the current table
        label  - write partition map and label to the disk
        ! - execute , then return
        quit
partition> m
Select partitioning base:
        0. Current partition table (original)
        1. All Free Hog
Choose base (enter number) [0]? 0

Part      Tag    Flag     Cylinders         Size            Blocks
  0       root    wm       0                0         (0/0/0)              0
  1       swap    wu       0                0         (0/0/0)              0
  2     backup    wu       0 - 44555     1023.95GB    (44556/0/0) 2147376420
  3 unassigned    wm       0                0         (0/0/0)              0
  4 unassigned    wm       0                0         (0/0/0)              0
  5 unassigned    wm       0                0         (0/0/0)              0
  6        usr    wm       0 - 44555     1023.95GB    (44556/0/0) 2147376420
  7 unassigned    wm       0                0         (0/0/0)              0

Do you wish to continue creating a new partition
table based on above table[yes]?       
Free Hog partition[6]?
Enter size of partition '0' [0b, 0c, 0.00mb, 0.00gb]: 100m
Enter size of partition '1' [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition '3' [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition '4' [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition '5' [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition '7' [0b, 0c, 0.00mb, 0.00gb]:

Part      Tag    Flag     Cylinders         Size            Blocks
  0       root    wm       0 -     4      117.66MB    (5/0/0)         240975
  1       swap    wu       0                0         (0/0/0)              0
  2     backup    wu       0 - 44555     1023.95GB    (44556/0/0) 2147376420
  3 unassigned    wm       0                0         (0/0/0)              0
  4 unassigned    wm       0                0         (0/0/0)              0
  5 unassigned    wm       0                0         (0/0/0)              0
  6        usr    wm       5 - 44555     1023.83GB    (44551/0/0) 2147135445
  7 unassigned    wm       0                0         (0/0/0)              0

Okay to make this the current partition table[yes]? yes
Enter table name (remember quotes): DBdg01

Ready to label disk, continue?
Ready to label disk, continue? lable
`lable' is not expected.
Ready to label disk, continue? y

partition> q


FORMAT MENU:
        disk       - select a disk
        type       - select (define) a disk type
        partition  - select (define) a partition table
        current    - describe the current disk
        format     - format and analyze the disk
        repair     - repair a defective sector
        label      - write label to the disk
        analyze    - surface analysis
        defect     - defect list management
        backup     - search for backup labels
        verify     - read and display labels
        save       - save new disk/partition definitions
        inquiry    - show vendor, product and revision
        volname    - set 8-character volume name
        !     - execute , then return
        quit
format> s
Saving new disk and partition definitions
Enter file name["./format.dat"]:
format> quit

 

以上過程完成後,下一步工作就是在ASM環境下新增磁碟,操作步驟如下:
bash-3.00# su  - oracle
Oracle Corporation      SunOS 5.10      Generic Patch   January 2005
You have new mail.
[dbserv1]@dbserv-db1[/export/home/oracle]$export ORACLE_SID=+ASM1
[+ASM1]@dbserv-db1[/export/home/oracle]$asmcmd
ASMCMD> lsdg
State    Type    Rebal  Unbal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name
MOUNTED  EXTERN  N      N         512   4096  1048576   1048217   812839                0          812839              0  BACKUP/
MOUNTED  EXTERN  N      N         512   4096  1048576    999760    40673                0           40673              0  DATADG/
ASMCMD> exit
[+ASM1]@dbserv-db1[/export/home/oracle]$sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Mon Jun 30 18:42:26 2014

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SQL> alter diskgroup DATADG add disk '/dev/rac/DBdg01' rebalance power 0;

Diskgroup altered.

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
[+ASM1]@dbserv-db1[/export/home/oracle]$asmcmd
ASMCMD> lsdg
State    Type    Rebal  Unbal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name
MOUNTED  EXTERN  N      N         512   4096  1048576   1048217   812839                0          812839              0  BACKUP/
MOUNTED  EXTERN  N      N         512   4096  1048576   2048165  1089067                0         1089067              0  DATADG/
ASMCMD> exit
[+ASM1]@dbserv-db1[/export/home/oracle]$eixt
-bash: eixt: command not found
[+ASM1]@dbserv-db1[/export/home/oracle]$exit
logout
bash-3.00# id
uid=0(root) gid=0(root)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18841027/viewspace-1200019/,如需轉載,請註明出處,否則將追究法律責任。

相關文章