RHEL4 + ORACLE10g + ASM + DBCA


이 글의 핵심은 ASM 기반으로 DataBase를 설치하는 것이다.
OS설치와 Oracle 엔진설치까지는 기존의 모든 설치 방법과 동일하다. 하지만 디스크에 기록하기 위해서 Row Device 나 OS FileSystem을 사용하는것이 아니고  ASM을 사용한다. 그러기 위해서는 ORACLEASM 라이브러리를 설치하고 Database를 생성할 때 영역 설정을 ASM 으로 한다. 


큰 그림은 다음과 같다.



자세한 ASM 의 개념 http://tawool-oracle.tistory.com/204 


전체 작업 순서

OS 설치

Oracle 엔진설치
엔진 패치
디스크 추가
LVM 설정
ASM library 설치
oracleasm 실행 disk 생성
css 데몬 시작

ASM Instacne 생성
DBCA 

ASM 관리
RMAN 으로 백업


OS 설치 및 Oracle 엔진 설치


OS 설치 Oracle 엔진설치는 위에서 언급했듯이 기존의 설치와 동일하다.
단 vmware에 OS를 설치할 때 CPU는 한개로 설정한다.

생략.


엔진 패치
생략


디스크 추가 및 LVM 구성
디스크 2G 5개 추가하여 아래와 같이 사용하도록 한다.

기본 구성
이름 : data_asm_01
용도 : 데이터베이스 설치영역  
크기 7G 

이름 : flash_recover_asm_01
용도 :  Flash Recover area  
크기 2.9G 

추가된 디스크 목록
/dev/sdc, /dev/sdd, /dev/sde, /dev/sdf, /dev/sdg



파티션작업(root)
lvm구성을 위해 'Linux LVM' 으로 모든 디스크의 파티션을 설정한다.  
(LVM 관련 포스팅 http://tawool.tistory.com/174 )

[root@server001 ~]# fdisk /dev/sdc

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): t

Selected partition 1

Hex code (type L to list codes): 8e

Changed system type of partition 1 to 8e (Linux LVM)


Command (m for help): w

The partition table has been altered!


Calling ioctl() to re-read partition table.

Syncing disks.


물리볼륨 생성(root)

# pvcreate  /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1  

Physical volume "/dev/sdc1" successfully created
Physical volume "/dev/sdd1" successfully created
Physical volume "/dev/sde1" successfully created
Physical volume "/dev/sdf1" successfully created
Physical volume "/dev/sdg1" successfully created



볼륨 그룹 생성(root)
# vgcreate asm /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1

Volume group "asm" successfully created


논리적 볼륨 생성
# lvcreate -L 7G -n data_asm_01 asm

/dev/cdrom: open failed: Read-only file system
Logical volume "data_asm_01" created


# lvcreate -L 2.9G -n flash_recover_asm_01 asm

Rounding up size to full physical extent 2.90 GB
Logical volume "flash_recover_asm_01" created


확인 
# lvscan
 

ASM Library (oracleasm*.rpm)설치

현재 리눅스 버전확인(root)
# uname -nr
xxxxxxxxxxxxx 2.6.9-34.EL
나오는 버전에 맞는 ASM Library 설치한다.
저기 버전의 뒤에 SMP가 붙으면 현재 CPU가 한개이상이다. 전용 rpm을 찾는다.

ORACLEASM 라이브러리 RPM 목록 및 설치(root) 
oracleasm-2.6.9-34.EL-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 -Uvh oracleasm*

warning: oracleasmlib-2.0.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing...                ########################################### [100%]
   1:oracleasm-support      ########################################### [ 33%]
   2:oracleasm-2.6.9-34.EL  ########################################### [ 67%]
   3:oracleasmlib           ########################################### [100%]



oracleasm 환경설정 및 실행 (root) 

# /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]:< 부팅시 ASM 모듈 자동 실행 여부
Scan for Oracle ASM disks on boot (y/n) [y]:< 부팅시 ASM 디스크 자동 스캔 여부
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

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 start

Initializing the Oracle ASMLib driver:                     [  OK  ]
Scanning the system for Oracle ASMLib disks:               [  OK  ]



ASM disk 생성
# /etc/init.d/oracleasm createdisk data_asm_01 /dev/asm/data_asm_01

Marking disk "data_asm_01" as an ASM disk:                 [  OK  ]


# /etc/init.d/oracleasm createdisk flash_recover_asm_01 /dev/asm/flash_recover_asm_01

Marking disk "flash_recover_asm_01" as an ASM disk:        [  OK  ]



CSS 데몬 활성화(root)
# /home/oracle/product/10g/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 30 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.
        server001
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)




DBCA 이용하여 ASM Instacne 생성







데이터베이스 생성 




다음 과제 : silent 로 Database를 구성해보자.


부록 Listener 구성