oracleasm方式创建ASM

1、准备oracleasm包

[root@localhost oracle]# uname -r
2.6.18-164.el5

[oracle@localhost ~]$ ls -l
total 264
-rw-r--r-- 1 oracle oinstall 136910 Jun 23 00:16 oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64.rpm
-rw-r--r-- 1 oracle oinstall  14176 Jun 23 00:16 oracleasmlib-2.0.4-1.el5.x86_64.rpm
-rw-r--r-- 1 oracle oinstall  90225 Jun 23 00:16 oracleasm-support-2.1.8-1.el5.x86_64.rpm

2、用root用户安装oracleasm包

在下载的时候,需要注意与linux操作系统的内核版本一致,否则可能会出现错误

[root@localhost oracle]# rpm -ivh oracleasm*
warning: oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing...                ########################################### [100%]
   1:oracleasm-support      ########################################### [ 33%]
   2:oracleasm-2.6.18-164.el########################################### [ 67%]
   3:oracleasmlib           ########################################### [100%]

3、配置驱动

[root@localhost oracle]# /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 []: 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
Initializing the Oracle ASMLib driver:                     [  OK  ]
Scanning the system for Oracle ASMLib disks:               [  OK  ]

4、 检查配置是否成功

确认ASMlib驱动被加载

[root@localhost oracle]# lsmod |grep asm
oracleasm              84136  1 

确认系统内存在oracleasm文件系统

[root@localhost oracle]# cat /proc/filesystems |grep oracleasm
nodev	oracleasmfs

确认oracleasm文件系统被挂载

[root@localhost oracle]# df -ha |grep oracleasm
oracleasmfs              0     0     0   -  /dev/oracleasm

5、fdisk创建磁盘

[root@localhost ~]# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1           6       48163+  83  Linux
/dev/sda2               7         515     4088542+  83  Linux
/dev/sda3             516         772     2064352+  82  Linux swap / Solaris
/dev/sda4             773        1044     2184840    5  Extended
/dev/sda5             773        1044     2184808+  83  Linux

Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn't contain a valid partition table

Disk /dev/sdc: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdc doesn't contain a valid partition table

发现存在几个未使用的,/dev/sdb,/dev/sdc

[root@localhost ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected 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-261, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-261, default 261): 
Using default value 261

Command (m for help): w   --写入
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

查看创建好的磁盘:

[root@localhost ~]# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1           6       48163+  83  Linux
/dev/sda2               7         515     4088542+  83  Linux
/dev/sda3             516         772     2064352+  82  Linux swap / Solaris
/dev/sda4             773        1044     2184840    5  Extended
/dev/sda5             773        1044     2184808+  83  Linux

Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         261     2096451   83  Linux

Disk /dev/sdc: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1         261     2096451   83  Linux

6、创建ASM磁盘

[root@localhost ~]# /etc/init.d/oracleasm createdisk KEL1 /dev/sdb1
Marking disk "KEL1" as an ASM disk:                        [  OK  ]
[root@localhost ~]# /etc/init.d/oracleasm createdisk KEL2 /dev/sdc1
Marking disk "KEL2" as an ASM disk:                        [  OK  ]
查看创建好的磁盘:

[root@localhost disks]# pwd
/dev/oracleasm/disks   --创建好的磁盘在此目录中
[root@localhost disks]# ls -l
total 0
brw-rw---- 1 oracle oinstall 8, 17 Jun 23 00:32 KEL1
brw-rw---- 1 oracle oinstall 8, 33 Jun 23 00:32 KEL2

检查创建成功:

[root@localhost ~]# /etc/init.d/oracleasm listdisks
KEL1
KEL2

在RAC环境中需要在另外一节点执行:

[root@localhost ~]# /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks:               [  OK  ]
[root@localhost ~]# /etc/init.d/oracleasm listdisks
KEL1
KEL2

从而在所有的节点都可以看见创建的ASM磁盘。

7、 启动CSS进程

在启动的时候,务必已经安装了oracle数据库,否则的话是不存在localconfig这个命令的

[root@kel ~]# /home/oracle/product/10.2.0/db_1/bin/localconfig add
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.
	kel
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)

8、配置ASM实例

[oracle@kel asm]$ vi initasm.ora 

INSTANCE_TYPE = ASM
ASM_POWER_LIMIT = 3
ASM_DISKSTRING = 'ORCL:KEL1','ORCL,KEL2'
DB_UNIQUE_NAME = '+ASM'

9、启动ASM

[oracle@kel asm]$ export ORACLE_SID=+ASM --默认的ASM实例名称
[oracle@kel asm]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Mon Jun 23 01:38:46 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup pfile='/home/oracle/asm/initasm.ora';
ASM instance started

Total System Global Area  125829120 bytes
Fixed Size		    2019000 bytes
Variable Size		   98644296 bytes
ASM Cache		   25165824 bytes
ORA-15110: no diskgroups mounted
错误表示,暂时没有磁盘组创建,从而也不会自动的挂在磁盘

10、创建spfile

SQL> create spfile from pfile;

File created.
使用spfile的好处是,以后创建了磁盘组之后,会自动的修改参数asm_diskgroups,从而在每次启动的时候可以自动的挂载磁盘组。


11、创建磁盘组

SQL> create diskgroup KEL external redundancy  disk 'ORCL:KEL1','ORCL:KEL2';


12、手工注册ASM

SQL> alter system register;

System altered.

13、创建表空间

在创建表空间的时候,数据库必须打开,然后在数据库的sqlplus中创建表空间即可

SQL> create tablespace kel datafile '+ASM/kel.dbf' size 50M;

Tablespace created.


附加:

删除CSS配置:

[root@kel ~]# /home/oracle/product/10.2.0/db_1/bin/localconfig delete
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.
Shutdown has begun. The daemons should exit soon.






for linux and python
原文地址:https://www.cnblogs.com/kellyseeme/p/5525160.html