Oracle ASM for linx as 4 x86-64 創建過程
1、劃分區
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot????? Start???????? End????? Blocks?? Id? System
/dev/sdb1?????????????? 1???????? 499???? 4008186?? 83? Linux
/dev/sdb2???????????? 500???????? 585????? 690795?? 83? Linux
/dev/sdb3???????????? 586???????? 622????? 297202+? 83? Linux
/dev/sdb4???????????? 623???????? 652????? 240975?? 83? Linux
其中以下分區用于創建ASM盤??
/dev/sdb2
/dev/sdb3
/dev/sdb4
2、下載和內核相關的asm rpm包,其網址為
http://www.oracle.com/technology/tech/linux/asmlib/index.html
當前內核為
[root@dbsvr /]# uname -a
Linux dbsvr 2.6.9-42.EL #1 Wed Jul 12 23:15:20 EDT 2006 x86_64 x86_64 x86_64 GNU/Linux
[root@dbsvr admin]# more /etc/issue
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Kernel \r on an \m
下載asm包的版本為
[root@dbsvr tmp]# rpm -qa|grep asm
oracleasm-support-2.1.3-1.el4
oracleasm-2.6.9-42.EL-debuginfo-2.0.5-1.el4
oracleasmlib-2.0.4-1.el4
oracleasm-2.6.9-42.EL-2.0.5-1.el4
3、安裝rpm包
其安裝順序為
[root@dbsvr tmp]# rpm -ivh oracleasm-support-2.1.3-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasm-support????? ########################################### [100%]
[root@dbsvr tmp]# rpm -ivh? oracleasm-2.6.9-42.EL-2.0.5-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasm-2.6.9-42.EL? ########################################### [100%]
[root@dbsvr tmp]# rpm -ivh oracleasm-2.6.9-42.EL-debuginfo-2.0.5-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasm-2.6.9-42.EL-d########################################### [100%]
[root@dbsvr tmp]# rpm -ivh? oracleasmlib-2.0.4-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasmlib?????????? ########################################### [100%]
4、配置asm lib
[root@dbsvr tmp]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver.? The following questions will determine whether the driver is
loaded on boot and what permissions it will have.? The current values
will be shown in brackets ('[]').? Hitting <ENTER> without typing an
answer will keep that current value.? Ctrl-C will abort.
Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [FAILED]
暈,出問題了,嘗試將SELINUX設置disabled
[root@dbsvr tmp]#? vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#?????? enforcing - SELinux security policy is enforced.
#?????? permissive - SELinux prints warnings instead of enforcing.
#?????? disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#?????? targeted - Only targeted network daemons are protected.
#?????? strict - Full SELinux protection.
SELINUXTYPE=targeted
[root@dbsvr tmp]#? setenforce 0
[root@dbsvr tmp]#? /usr/sbin/sestatus
SELinux status:???????? enabled
SELinuxfs mount:??????? /selinux
Current mode:?????????? permissive
Mode from config file:? disabled
Policy version:???????? 18
Policy from config file:targeted
Policy booleans:
allow_syslog_to_console inactive
allow_ypbind??????????? inactive
dhcpd_disable_trans???? inactive
httpd_builtin_scripting active
httpd_disable_trans???? inactive
httpd_enable_cgi??????? active
httpd_enable_homedirs?? active
httpd_ssi_exec????????? active
httpd_tty_comm????????? inactive
httpd_unified?????????? active
mysqld_disable_trans??? inactive
named_disable_trans???? inactive
named_write_master_zonesinactive
nscd_disable_trans????? inactive
ntpd_disable_trans????? inactive
pegasus_disable_trans?? inactive
portmap_disable_trans?? inactive
postgresql_disable_transinactive
snmpd_disable_trans???? inactive
squid_disable_trans???? inactive
syslogd_disable_trans?? inactive
use_nfs_home_dirs?????? inactive
use_samba_home_dirs???? inactive
use_syslogng??????????? inactive
winbind_disable_trans?? inactive
ypbind_disable_trans??? inactive
[root@dbsvr tmp]# reboot
Broadcast message from root (pts/2) (Sun Aug 23 17:01:10 2009):
The system is going down for reboot NOW!
[root@dbsvr tmp]# /usr/sbin/sestatus
SELinux status:???????? disabled
[root@dbsvr tmp]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver.? The following questions will determine whether the driver is
loaded on boot and what permissions it will have.? The current values
will be shown in brackets ('[]').? Hitting <ENTER> without typing an
answer will keep that current value.? Ctrl-C will abort.
Default user to own the driver interface [oracle]:
Default group to own the driver interface [dba]:
Start Oracle ASM library driver on boot (y/n) [y]:
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [? OK? ]
Scanning the system for Oracle ASMLib disks: [? OK? ]
可以利用 /etc/init.d/oracleasm 的 'enable' 和 'disable' 選項來啟用或禁用自動啟動。
[root@dbsvr tmp]# /etc/init.d/oracleasm disable
Writing Oracle ASM library driver configuration: done
Dropping Oracle ASMLib disks: [? OK? ]
Shutting down the Oracle ASMLib driver: [? OK? ]
[root@dbsvr tmp]# /etc/init.d/oracleasm enable
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [? OK? ]
Scanning the system for Oracle ASMLib disks: [? OK? ]
5、對磁盤組的操作
1)創建asm磁盤組
[root@dbsvr tmp]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb2
Marking disk "VOL1" as an ASM disk: [? OK? ]
[root@dbsvr tmp]# /etc/init.d/oracleasm createdisk VOL2 /dev/sdb3
Marking disk "VOL2" as an ASM disk: [? OK? ]
[root@dbsvr tmp]# /etc/init.d/oracleasm createdisk VOL3 /dev/sdb4
Marking disk "VOL3" as an ASM disk: [? OK? ]
注意:磁盤名稱是 ASCII 大寫字母、數字和下劃線。它們必須以字母開始。
2)當然不再被 ASM 使用的磁盤也可以取消標記
[root@dbsvr tmp]#? /etc/init.d/oracleasm deletedisk VOL1
Removing ASM disk "VOL1": [? OK? ]
3)可以查詢任意的操作系統磁盤,以了解它是否被 ASM 使用:
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk /dev/sdb2
Device "/dev/sdb2" is marked an ASM disk with the label "VOL1"
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk /dev/sdb3
Device "/dev/sdb3" is marked an ASM disk with the label "VOL2"
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk /dev/sdb4
Device "/dev/sdb4" is marked an ASM disk with the label "VOL3"
4)可以列出和查詢現有的磁盤:
[root@dbsvr tmp]# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
[root@dbsvr tmp]# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk VOL1
Disk "VOL1" is a valid ASM disk
當向 RAC 設置中添加磁盤時,需要通知其他節點該磁盤的存在。在一個節點上運行 'createdisk' 命令,然后在其他每一個節點上運行 'scandisks':
[root@dbsvr tmp]# /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks: [? OK? ]
5、利用dbca建庫時,需要運行腳本,注意是root用戶,但環境變量是oracle
[root@dbsvr bin]# localconfig add
/etc/oracle does not exist. Creating it now.
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
Configuration for local CSS has been initialized
Adding to inittab
Startup will be queued to init within 90 seconds.
Checking the status of new Oracle init process...
Expecting the CRS daemons to be up within 600 seconds.
CSS is active on these nodes.
dbsvr
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)
建庫時報ora-12547錯誤,需要安裝如下包:
[root@dbsvr tmp]# rpm -qa|grep libaio
libaio-0.3.105-2
libaio-0.3.105-2
libaio-devel-0.3.105-2
附:ASM實例可以手工創建,也可以通過dbca創建,如手工創建
1、創建asm參數
[oracle@dbsvr dbs]$ more spfile+ASM.ora
+ASM.asm_diskgroups='ASMDISK'#Manual Mount
*.asm_diskgroups='ASMDISK'
*.background_dump_dest='/oracle/app/admin/+ASM/bdump'
*.core_dump_dest='/oracle/app/admin/+ASM/cdump'
*.instance_type='asm'
*.large_pool_size=12M
*.remote_login_passwordfile='SHARED'
*.user_dump_dest='/oracle/app/admin/+ASM/udump'
2、創建diskgroup組
SQL> ALTER DISKGROUP ALL MOUNT
Sun Aug 23 18:26:49 2009
Loaded ASM Library - Generic Linux, version 2.0.4 (KABI_V2) library for asmlib interface
Sun Aug 23 18:29:24 2009
SQL> CREATE DISKGROUP asmdisk External REDUNDANCY? DISK '/dev/sdb2' SIZE 674M ,'/dev/sdb3' SIZE 290M ,'/dev/sdb4' SIZE 235M ,'/dev/sdc1' SIZE 1913M;
1、劃分區
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot????? Start???????? End????? Blocks?? Id? System
/dev/sdb1?????????????? 1???????? 499???? 4008186?? 83? Linux
/dev/sdb2???????????? 500???????? 585????? 690795?? 83? Linux
/dev/sdb3???????????? 586???????? 622????? 297202+? 83? Linux
/dev/sdb4???????????? 623???????? 652????? 240975?? 83? Linux
其中以下分區用于創建ASM盤??
/dev/sdb2
/dev/sdb3
/dev/sdb4
2、下載和內核相關的asm rpm包,其網址為
http://www.oracle.com/technology/tech/linux/asmlib/index.html
當前內核為
[root@dbsvr /]# uname -a
Linux dbsvr 2.6.9-42.EL #1 Wed Jul 12 23:15:20 EDT 2006 x86_64 x86_64 x86_64 GNU/Linux
[root@dbsvr admin]# more /etc/issue
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Kernel \r on an \m
下載asm包的版本為
[root@dbsvr tmp]# rpm -qa|grep asm
oracleasm-support-2.1.3-1.el4
oracleasm-2.6.9-42.EL-debuginfo-2.0.5-1.el4
oracleasmlib-2.0.4-1.el4
oracleasm-2.6.9-42.EL-2.0.5-1.el4
3、安裝rpm包
其安裝順序為
[root@dbsvr tmp]# rpm -ivh oracleasm-support-2.1.3-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasm-support????? ########################################### [100%]
[root@dbsvr tmp]# rpm -ivh? oracleasm-2.6.9-42.EL-2.0.5-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasm-2.6.9-42.EL? ########################################### [100%]
[root@dbsvr tmp]# rpm -ivh oracleasm-2.6.9-42.EL-debuginfo-2.0.5-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasm-2.6.9-42.EL-d########################################### [100%]
[root@dbsvr tmp]# rpm -ivh? oracleasmlib-2.0.4-1.el4.x86_64.rpm
Preparing...??????????????? ########################################### [100%]
1:oracleasmlib?????????? ########################################### [100%]
4、配置asm lib
[root@dbsvr tmp]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver.? The following questions will determine whether the driver is
loaded on boot and what permissions it will have.? The current values
will be shown in brackets ('[]').? Hitting <ENTER> without typing an
answer will keep that current value.? Ctrl-C will abort.
Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [FAILED]
暈,出問題了,嘗試將SELINUX設置disabled
[root@dbsvr tmp]#? vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#?????? enforcing - SELinux security policy is enforced.
#?????? permissive - SELinux prints warnings instead of enforcing.
#?????? disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#?????? targeted - Only targeted network daemons are protected.
#?????? strict - Full SELinux protection.
SELINUXTYPE=targeted
[root@dbsvr tmp]#? setenforce 0
[root@dbsvr tmp]#? /usr/sbin/sestatus
SELinux status:???????? enabled
SELinuxfs mount:??????? /selinux
Current mode:?????????? permissive
Mode from config file:? disabled
Policy version:???????? 18
Policy from config file:targeted
Policy booleans:
allow_syslog_to_console inactive
allow_ypbind??????????? inactive
dhcpd_disable_trans???? inactive
httpd_builtin_scripting active
httpd_disable_trans???? inactive
httpd_enable_cgi??????? active
httpd_enable_homedirs?? active
httpd_ssi_exec????????? active
httpd_tty_comm????????? inactive
httpd_unified?????????? active
mysqld_disable_trans??? inactive
named_disable_trans???? inactive
named_write_master_zonesinactive
nscd_disable_trans????? inactive
ntpd_disable_trans????? inactive
pegasus_disable_trans?? inactive
portmap_disable_trans?? inactive
postgresql_disable_transinactive
snmpd_disable_trans???? inactive
squid_disable_trans???? inactive
syslogd_disable_trans?? inactive
use_nfs_home_dirs?????? inactive
use_samba_home_dirs???? inactive
use_syslogng??????????? inactive
winbind_disable_trans?? inactive
ypbind_disable_trans??? inactive
[root@dbsvr tmp]# reboot
Broadcast message from root (pts/2) (Sun Aug 23 17:01:10 2009):
The system is going down for reboot NOW!
[root@dbsvr tmp]# /usr/sbin/sestatus
SELinux status:???????? disabled
[root@dbsvr tmp]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver.? The following questions will determine whether the driver is
loaded on boot and what permissions it will have.? The current values
will be shown in brackets ('[]').? Hitting <ENTER> without typing an
answer will keep that current value.? Ctrl-C will abort.
Default user to own the driver interface [oracle]:
Default group to own the driver interface [dba]:
Start Oracle ASM library driver on boot (y/n) [y]:
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [? OK? ]
Scanning the system for Oracle ASMLib disks: [? OK? ]
可以利用 /etc/init.d/oracleasm 的 'enable' 和 'disable' 選項來啟用或禁用自動啟動。
[root@dbsvr tmp]# /etc/init.d/oracleasm disable
Writing Oracle ASM library driver configuration: done
Dropping Oracle ASMLib disks: [? OK? ]
Shutting down the Oracle ASMLib driver: [? OK? ]
[root@dbsvr tmp]# /etc/init.d/oracleasm enable
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [? OK? ]
Scanning the system for Oracle ASMLib disks: [? OK? ]
5、對磁盤組的操作
1)創建asm磁盤組
[root@dbsvr tmp]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb2
Marking disk "VOL1" as an ASM disk: [? OK? ]
[root@dbsvr tmp]# /etc/init.d/oracleasm createdisk VOL2 /dev/sdb3
Marking disk "VOL2" as an ASM disk: [? OK? ]
[root@dbsvr tmp]# /etc/init.d/oracleasm createdisk VOL3 /dev/sdb4
Marking disk "VOL3" as an ASM disk: [? OK? ]
注意:磁盤名稱是 ASCII 大寫字母、數字和下劃線。它們必須以字母開始。
2)當然不再被 ASM 使用的磁盤也可以取消標記
[root@dbsvr tmp]#? /etc/init.d/oracleasm deletedisk VOL1
Removing ASM disk "VOL1": [? OK? ]
3)可以查詢任意的操作系統磁盤,以了解它是否被 ASM 使用:
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk /dev/sdb2
Device "/dev/sdb2" is marked an ASM disk with the label "VOL1"
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk /dev/sdb3
Device "/dev/sdb3" is marked an ASM disk with the label "VOL2"
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk /dev/sdb4
Device "/dev/sdb4" is marked an ASM disk with the label "VOL3"
4)可以列出和查詢現有的磁盤:
[root@dbsvr tmp]# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
[root@dbsvr tmp]# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
[root@dbsvr tmp]# /etc/init.d/oracleasm querydisk VOL1
Disk "VOL1" is a valid ASM disk
當向 RAC 設置中添加磁盤時,需要通知其他節點該磁盤的存在。在一個節點上運行 'createdisk' 命令,然后在其他每一個節點上運行 'scandisks':
[root@dbsvr tmp]# /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks: [? OK? ]
5、利用dbca建庫時,需要運行腳本,注意是root用戶,但環境變量是oracle
[root@dbsvr bin]# localconfig add
/etc/oracle does not exist. Creating it now.
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
Configuration for local CSS has been initialized
Adding to inittab
Startup will be queued to init within 90 seconds.
Checking the status of new Oracle init process...
Expecting the CRS daemons to be up within 600 seconds.
CSS is active on these nodes.
dbsvr
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)
建庫時報ora-12547錯誤,需要安裝如下包:
[root@dbsvr tmp]# rpm -qa|grep libaio
libaio-0.3.105-2
libaio-0.3.105-2
libaio-devel-0.3.105-2
附:ASM實例可以手工創建,也可以通過dbca創建,如手工創建
1、創建asm參數
[oracle@dbsvr dbs]$ more spfile+ASM.ora
+ASM.asm_diskgroups='ASMDISK'#Manual Mount
*.asm_diskgroups='ASMDISK'
*.background_dump_dest='/oracle/app/admin/+ASM/bdump'
*.core_dump_dest='/oracle/app/admin/+ASM/cdump'
*.instance_type='asm'
*.large_pool_size=12M
*.remote_login_passwordfile='SHARED'
*.user_dump_dest='/oracle/app/admin/+ASM/udump'
2、創建diskgroup組
SQL> ALTER DISKGROUP ALL MOUNT
Sun Aug 23 18:26:49 2009
Loaded ASM Library - Generic Linux, version 2.0.4 (KABI_V2) library for asmlib interface
Sun Aug 23 18:29:24 2009
SQL> CREATE DISKGROUP asmdisk External REDUNDANCY? DISK '/dev/sdb2' SIZE 674M ,'/dev/sdb3' SIZE 290M ,'/dev/sdb4' SIZE 235M ,'/dev/sdc1' SIZE 1913M;
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
