asmlib的安装

来源:互联网 发布:淘宝白色上衣 编辑:程序博客网 时间:2024/03/29 18:54

目前只有Linux 操作系统上有asmlib 包,其他的系统暂时还没有。asmlib 简化磁盘管理,取代原来我们在linux 上常用rawdevices 服务。(也就是说,asmlib是由几个os库文件组成的,用来简化管理磁盘,安装了它,不用使用raw devices了)

根据uname –r 检测结果,下载的驱动程序包名称与其一致。务必!!!


1、asmlib的安装过程

1、查看内核:

[root@rac2 ~]# uname -a

Linux rac2.lyg.com 2.6.18-164.el5#1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

2、Oracle ASMlib下载地址:

http://www.oracle.com/technetwork/server-storage/linux/downloads/index.html

下载以下rpm包(注意rpm包版本和Linux内核版本一致):

oracleasm-support-2.1.8-1.el5.x86_64

oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64

oracleasmlib-2.0.4-1.el5.x86_64

3、安装(所有节点)

[root@rac2 package]# chmod 755 oracle*

[root@rac2 package]# rpm -ivh oracle*

warning: oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64.rpm: HeaderV3 DSA signature: NOKEY, key ID 1e5e0159

Preparing...               ########################################### [100%]

   1:oracleasm-support     ########################################### [ 33%]

   2:oracleasm-2.6.18-164.el###########################################[ 67%]

   3:oracleasmlib          ########################################### [100%]

4、初始化asmlib (在所有节点执行)

[root@rac1 Desktop]# oracleasm configure -i

Configuring the Oracle ASM library driver.

 

This will configure the on-boot properties of the Oracle ASMlibrary

driver.  The followingquestions 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 []: grid

Default group to own the driver interface []: oinstall

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

 

[root@rac1 Desktop]# oracleasm init

Creating /dev/oracleasm mount point: /dev/oracleasm

Loading module "oracleasm": oracleasm

Mounting ASMlib driver filesystem: /dev/oracleasm

在rac2上的操作完全一样,忽略之。


以上操作执行完成了四大任务:

1 、创建了配置文件/etc/sysconfig/oracleasm(其实这个是一个软连接,修改的话,要修改那个真实的文件)

2 、创建了挂载点/dev/oracleasm

3 、加载oracleasm 内核模块

4 、挂载ASM 函数驱动文件系统

 

2、asm磁盘的创建

使用asmlib 管理磁盘后,需要创建一系列磁盘。其实,这不是真正意义上磁盘分区创建,如fdisk 上的创建磁盘操作。这里只是一个标记命名。将系统上的磁盘分区在asmlib 的配置文件中做一个标识,使得ASMLIB 能加载使用,ASM 实例从ASMLIB 中读取的到。

这点和RAW DEVICES 其实很相似的。不知道性能差异如何?目前没有测试结果。

创建命令如下,在root 用户下执行。

在一个节点上以root身份做

我们做如下规划:

sdb1 OCR-VOTE

sdc1 DATA

sdd1 FRA

[root@rac1 ~]# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGIor OSF disklabel

Building a new DOS disklabel. Changes will remain in memory only,

until you decide to write them. After that, of course, theprevious

content won't be recoverable.

 

Warning: invalid flag 0x0000 of partition table 4 will becorrected by w(rite)

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-652, default 1):

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-652, default 652):

Using default value 652

Command (m for help): p

 

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         652     5237158+ 83  Linux

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

Syncing disks.

[root@rac1 ~]#

另外两个盘sdcsdd以同样的方式创建。

rac1节点上以root身份做,创建asm磁盘:

[root@rac1 ~]# oracleasm createdisk OCR_VOTE /dev/sdb1

Writing disk header: done

Instantiating disk: done

[root@rac1 ~]# oracleasm createdisk DATA /dev/sdc1

Writing disk header: done

Instantiating disk: done

[root@rac1 ~]# oracleasm createdisk FRA /dev/sdd1

Writing disk header: done

Instantiating disk: done

[root@rac1 ~]# oracleasm scandisks

Reloading disk partitions: done

Cleaning any stale ASM disks...

Scanning system for ASM disks...



3、ASMLIB 磁盘的管理

ASM 磁盘使用oracleasm 工具进行管理。

[root@db4 ~]# oracleasm -h

Usage: oracleasm [--exec-path=<exec_path>] <command> [ <args> ]

       oracleasm --exec-path

       oracleasm -h

       oracleasm -V

 

The basic oracleasm commands are:

    configure        Configure the Oracle Linux ASMLib driver

    init             Load and initialize the ASMLib driver

    exit             Stop the ASMLib driver

    scandisks        Scan the system for Oracle ASMLib disks

    status           Display the status of the Oracle ASMLib driver

    listdisks        List known Oracle ASMLib disks

    querydisk        Determine if a disk belongs to Oracle ASMlib

    createdisk       Allocate a device for Oracle ASMLib use

    deletedisk       Return a device to the operating system

    renamedisk       Change the label of an Oracle ASMlib disk

    update-driver    Download the latest ASMLib driver

 

使用oracleasm listdisks 列出所有创建的磁盘。

[root@rac1 ~]# oracleasm listdisks

DATA

FRA

OCR_VOTE

[root@rac1 ~]#



使用oracleasm querydisk 列出某一磁盘的详细信息,如指向的哪个磁盘分区。

[root@db4 ~]# oracleasm querydisk

Usage: oracleasm-querydisk [-l <manager>] [-v] [-d|-p] <label>|<device> ...

 

 [root@db4 ~]# oracleasm querydisk vol1

Disk "VOL1" is a valid ASM disk

[root@db4 ~]# oracleasm querydisk -v vol1

Disk "VOL1" is a valid ASM disk

[root@db4 ~]# oracleasm querydisk -v -d vol1

Disk "VOL1" is a valid ASM disk on device /dev/sdb1[8,17]

加选项  -v -p, 显示出物理盘分区。

[root@db4 ~]# oracleasm querydisk -v -p vol1

Disk "VOL1" is a valid ASM disk

/dev/sdb1: LABEL="VOL1" TYPE="oracleasm"

/dev/mapper/mpath1p1: LABEL="VOL1" TYPE="oracleasm"

[root@db4 ~]#

 

4、ASMLIB 磁盘的使用

ASMLIB 磁盘在10g 环境中,只有一个用途,给ASM 实例使用。在11g 中,增加了ADVM 和ACFS的功能,类似逻辑卷和文件系统。

我测试了文件系统,它还是不能给数据库保存数据文件信息,类似普通的文件系统,只是在RAC下多节点可以同时读取。

在ASM 实例中,初始化参数需要注意ASMLIB 的磁盘的挂载点信息。它的挂载点是/dev/oracleasm/ 。

初始化参数关键点如下:

*.asm_diskgroups='VG1','VG2'

*.asm_diskstring='/dev/oracleasm/disks/VOL1','/dev/oracleasm/disks/VOL2'

原创粉丝点击