ASM驱动安装
ASM管理的逻辑结构是两个层次,ASM磁盘组DiskGroup和ASM磁盘Disk。磁盘组是一个或者多个磁盘的集合。ASM磁盘对应的物理种类很多,比如分区、物理磁盘乃至裸设备等,都可以作为ASM磁盘的一种。
Oracle为ASM磁盘提供了识别的机制,就是我们要说的ASM驱动库包。ASMLib的作用就是标记某个磁盘或者存储设备是一个ASM磁盘,以及磁盘的名称。这样,在新建立ASM实例和DiskGroup的时候,可以更方便的识别。
从Linux4.x开始,Oracle就针对各个Linux内核提供ASMLib驱动。目前比较常用的Linux版本,如RedHat、CentOS等的用户,在安装Oracle ASM的时候是可以免费下载到ASMLib包的。但是从Linux6开始,也就是Oracle全力推广自己开发的Linux操作系统,就宣布不会针对新的其他版本Linux提供ASMLib支持,同时限制只有注册Linux用户才能下载到新版本的ASMLib。
但是,在一般情况下,不安装ASMLib也是可以顺利安装上ASM实例的。只是需要进行一些调整,本文就不加以累述了。我们实验环境是CentOS4.8,还是有免费的ASMLib支持的。
首先,检查确定所有Linux内核版本。
针对不同的Linux内核版本,Oracle是提供了不同的asmLib驱动支持的。首先要搞清楚使用的Linux内核版本,之后选择合适的版本下载。
[root@asmlab ~]# uname -r
2.6.9-89.ELsmp
[root@asmlab ~]# uname -a
Linux asmlab.localdomain 2.6.9-89.ELsmp #1 SMP Mon Jun 22 12:32:43 EDT 2009 i686 i686 i386 GNU/Linu
可见此时使用的内核系列是2.6.89.Elsmp,请注意严格进行版本匹配。因为在2.6.89版本下,还有一系列的子版本。对ASMLib来说,是不承认的。
对Linux4.X系列的OS,可以选择到Oracle官方网站上进行下载。路径地址是:http://www.oracle.com/technetwork/topics/linux/downloads/rhel4-092650.html。该地址下提供了多种硬件平台、多种Kernel版本的ASM工具库。通常需要下载三个支持rpm包即可以,oracleasm-support、oracleasmlib和oracleasm。
我们实验模拟的是Intel x86 32位 Linux,所以选择下面三个安装rpm文件。
//上传到指定Linux目录上
[root@asmlab upload]# ls
oracleasm-2.6.9-89.ELsmp-2.0.5-1.el4.i686.rpm
oracleasmlib-2.0.4-1.el4.i386.rpm
oracleasm-support-2.1.4-1.el4.i386.rpm
之后,依据顺序将三个rpm包进行安装。
[root@asmlab upload]# rpm -ivh oracleasm-support-2.1.4-1.el4.i386.rpm
warning: oracleasm-support-2.1.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:oracleasm-support ########################################### [100%]
[root@asmlab upload]# rpm -ivh oracleasm-2.6.9-89.ELsmp-2.0.5-1.el4.i686.rpm
warning: oracleasm-2.6.9-89.ELsmp-2.0.5-1.el4.i686.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:oracleasm-2.6.9-89.ELsm########################################### [100%]
[root@asmlab upload]# rpm -ivh oracleasmlib-2.0.4-1.el4.i386.rpm
warning: oracleasmlib-2.0.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:oracleasmlib ########################################### [100%]
Linux中,rpm包就类似于windows下的可执行程序,而且是安装程序。安装rpm包之后,就可以使用ASM包工具对存储盘进行标识,创建ASM Disk。
首先可以进行ASM驱动配置。
//配置ASM参数
[root@asmlab ~]# /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
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface []: grid //接口用户
Default group to own the driver interface []: dba //接口用户组
Start Oracle ASM library driver on boot (y/n) [n]: y //启动时是否加载ASM驱动程序
Scan for Oracle ASM disks on boot (y/n) [y]: y //启动时是否进行ASM磁盘扫描;
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
更换所有权。
[root@asmlab ~]# chown grid:asmadmin /dev/sdb1
[root@asmlab ~]# chown grid:asmadmin /dev/sdb2
[root@asmlab ~]# chown grid:asmadmin /dev/sdb3
开始创建ASM磁盘。
//创建系列ASM磁盘 VOL1 VOL2和VOL3
[root@asmlab ~]# /usr/sbin/oracleasm createdisk VOL1 /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@asmlab ~]# /usr/sbin/oracleasm createdisk VOL2 /dev/sdb2
Writing disk header: done
Instantiating disk: done
[root@asmlab ~]# /usr/sbin/oracleasm createdisk VOL3 /dev/sdb3
Writing disk header: done
Instantiating disk: done
手工进行ASM磁盘扫描。
[root@asmlab ~]# /usr/sbin/oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
[root@asmlab ~]# /usr/sbin/oracleasm listdisks
VOL1
VOL2
VOL3
到此,ASM Disk建立完成。之后可以选择安装Oracle 11g的Grid组件,在建立ASM DiskGroup的时候,就可以看到我们在此处建立的ASM盘。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17203031/viewspace-692692/,如需转载,请注明出处,否则将追究法律责任。