Oracle 11g R2, Grid Infrastructure - 윈디하나의 솔라나라
|
독립서버용 Grid Infrastructure와 같이 구성할 것이다. 오라클 11g의 또다른 특징인 Oracle Real Application Clusters One Node설치는 이 문서에서 다루지 않는다.
root@wl ~ # vi /etc/system ... set max_nprocs = 30000 set zfs:zfs_arc_max = 268435456 set noexec_user_stack = 1 root@wl ~ # swap -s 총: 458220k 바이트 할당 + 76512k 예약 = 534732k 사용, 2453900k 사용 가능 root@wl ~ # zfs set volsize=8g rpool/swap root@wl ~ # sync root@wl ~ # shutdown -y -i 6 -g 0재시작한 후 아래와 같이 프로젝트를 설정한다.
root@wl ~ # projadd -p 101 -c "Resources for Oracle" group.dba
root@wl ~ # projmod -sK "project.max-shm-memory=(privileged,4G,deny)" group.dba
root@wl ~ # projmod -sK "project.max-sem-ids=(privileged,100,deny)" group.dba
root@wl ~ # projmod -sK "project.max-shm-ids=(privileged,100,deny)" group.dba
root@wl ~ # projmod -sK "project.max-sem-nsems=(privileged,256,deny)" group.dba
root@wl ~ # projmod -sK "process.max-file-descriptor=(priv,65536,deny)" group.dba
root@wl ~ # projects -l group.dba
group.dba
projid : 101
comment: ""
users : (none)
groups : (none)
attribs: process.max-file-descriptor=(priv,65536,deny)
project.max-sem-ids=(privileged,100,deny)
project.max-sem-nsems=(privileged,256,deny)
project.max-shm-ids=(privileged,100,deny)
project.max-shm-memory=(privileged,4294967296,deny)
root@wl ~ # groupadd -g 202 oinstall root@wl ~ # groupadd -g 201 dba root@wl ~ # groupadd -g 203 oper root@wl ~ # groupadd -g 204 asmadmin root@wl ~ # groupadd -g 205 asmdba root@wl ~ # groupadd -g 206 asmoper root@wl ~ # useradd -d /export/home/oracle -g oinstall -G dba,oper,asmadmin,asmdba,asmoper -m -u 201 -s /bin/bash -K project=group.dba oracle root@wl ~ # passwd oracle root@wl ~ # mkdir -p /oracle/database/oracle root@wl ~ # mkdir /oracle/database/oracleasm root@wl ~ # chown -R oracle:oinstall /oracle/database root@wl ~ # chmod -R 775 /oracle/database root@wl ~ # chmod -R 770 /oracle/database/oracleasm root@wl ~ # su - oracle oracle@wl ~ $ vi .profile ulimit -n 65536 ulimit -s 32768 DISPLAY=:0.0; export DISPLAY ORACLE_BASE=/oracle/database/oracle; export ORACLE_BASE ORACLE_SID=orcl; export ORACLE_SID NLS_LANG=Korean_Korea.AL32UTF8; export NLS_LANG if [ -x /usr/local/bin/dbhome ]; then TMPHOME=`/usr/local/bin/dbhome $ORACLE_SID`; if [ "$?" == "0" ]; then ORACLE_HOME="$TMPHOME"; export ORACLE_HOME; PATH=$PATH:$ORACLE_HOME/bin; export PATH LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib fi fi oracle@wl ~ $ . .profile oracle@wl ~ $ ulimit -t -f -d -s -n -v cpu time (seconds, -t) unlimited file size (blocks, -f) unlimited data seg size (kbytes, -d) unlimited stack size (kbytes, -s) 32768 open files (-n) 65536 virtual memory (kbytes, -v) unlimited
c2t0d0는 디스크를 의미한다. 이 이름은 시스템마다 다르다. 솔라리스에서 디스크 레이아웃에 대한 자세한 설명은 윈디하나의 솔라나라: 디스크 관리를 읽어보자.
# chown oracle:oinstall /dev/rdsk/c2t0d0s0 # chmod 660 /dev/rdsk/c2t0d0s0
root@wl ~ # zfs create -V 4g rpool/src_asm_disk1 root@wl ~ # zfs create -V 4g rpool/src_asm_disk2 root@wl ~ # ls -al /dev/zvol/rdsk/rpool/src_asm_disk[1-2] lrwxrwxrwx 1 root root 39 8월 22일 22:06 /dev/zvol/rdsk/rpool/src_asm_disk1 -> ../../../../devices/pseudo/zfs@0:3c,raw lrwxrwxrwx 1 root root 39 8월 22일 22:06 /dev/zvol/rdsk/rpool/src_asm_disk2 -> ../../../../devices/pseudo/zfs@0:4c,raw root@wl ~ # ls -al /devices/pseudo/zfs@0:?c,raw crw------- 1 root sys 181, 3 8월 22일 22:06 /devices/pseudo/zfs@0:3c,raw crw------- 1 root sys 181, 4 8월 22일 22:06 /devices/pseudo/zfs@0:4c,raw
/dev/zvol/rdsk/rpool/src_asm_disk1같이 ZFS 경로를 사용해도 되지만, 여기서는 편의상 /oracle/database/oracleasm아래에 노드를 생성시켜 놓았다.
root@wl ~ # cd /oracle/database/oracleasm root@wl /oracle/database/oracleasm # mknod asm_disk1 c 181 3 root@wl /oracle/database/oracleasm # mknod asm_disk2 c 181 4 root@wl /oracle/database/oracleasm # chown oracle:oinstall asm_* root@wl /oracle/database/oracleasm # chmod 660 asm_*
root@wl /oracle/database/oracleasm # mkfile 4g src_asm_disk1 root@wl /oracle/database/oracleasm # mkfile 4g src_asm_disk2 root@wl /oracle/database/oracleasm # lofiadm -a /oracle/database/oracleasm/src_asm_disk1 /dev/lofi/1 root@wl /oracle/database/oracleasm # lofiadm -a /oracle/database/oracleasm/src_asm_disk2 /dev/lofi/2 root@wl /oracle/database/oracleasm # lofiadm Block Device File /dev/lofi/1 /oracle/database/oracleasm/src_asm_disk1 /dev/lofi/2 /oracle/database/oracleasm/src_asm_disk2 root@wl /oracle/database/oracleasm # ls -al /dev/lofi/* lrwxrwxrwx 1 root root 29 8월 15일 20:00 /dev/lofi/1 -> ../../devices/pseudo/lofi@0:1 lrwxrwxrwx 1 root root 29 8월 15일 20:00 /dev/lofi/2 -> ../../devices/pseudo/lofi@0:2 root@wl /oracle/database/oracleasm # ls -l /devices/pseudo/lofi@0:[1-2] brw------- 1 root sys 144, 1 8월 15일 20:00 /devices/pseudo/lofi@0:1 brw------- 1 root sys 144, 2 8월 15일 20:00 /devices/pseudo/lofi@0:2 root@wl /oracle/database/oracleasm # mknod asm_disk1 c 144 1 root@wl /oracle/database/oracleasm # mknod asm_disk1 c 144 2 root@wl /oracle/database/oracleasm # chown oracle:oinstall asm_* root@wl /oracle/database/oracleasm # chmod 660 asm_* root@wl /oracle/database/oracleasm # ls -al ... crw-rw---- 1 oracle oinstall 144, 1 8월 16일 22:20 asm_disk1 crw-rw---- 1 oracle oinstall 144, 2 8월 16일 22:20 asm_disk2 -rw------T 1 root root 4.0G 8월 16일 22:18 src_asm_disk1 -rw------T 1 root root 4.0G 8월 16일 22:19 src_asm_disk2 root@wl /oracle/database/oracleasm #
Oracle 11g for Solaris x64파일들을 받아 압축을 해제한다. Oracle Database Software Downloads에 가서 무료 가입 후 받을 수 있다.
root@wl ~/src/oracle # unzip ../solaris.x64_11gR2_database_1of2.zip root@wl ~/src/oracle # unzip ../solaris.x64_11gR2_database_2of2.zip root@wl ~/src/oracle # unzip ../solaris.x64_11gR2_grid.zip root@wl ~/src/oracle # unzip ../solaris.x64_11gR2_examples.zip
runInstaller를 실행시키기 전에 반드시 해제 해놓아야 한다.
root@wl ~ # /usr/openwin/bin/xhost + access control disabled, clients can connect from any host root@wl ~ # su - oracle oracle@wl ~ #
oracle@wl /root/src/oracle/grid # ./runInstaller




/oracle/database/oracleasm/asm*을 입력한 후 확인을 클릭하면 디스크가 검색된다. 중복성을 [외부]로 선택하고, 검색된 디스크 두개를 모두 선택한다. [다음]을 클릭한다.



/oracle/database/oracle을 선택하고, [다음]을 클릭한다.




root@wl /oracle/database/oraInventory # ./orainstRoot.sh
다음 권한 변경 중/oracle/database/oraInventory.
그룹에 대한 읽기, 쓰기 권한을 추가하는 중입니다.
월드에 대한 읽기, 쓰기, 실행 권한을 제거하는 중입니다.
그룹 이름 변경 중 /oracle/database/oraInventory 대상 oinstall.
스크립트 실행이 완료되었습니다.
root@wl /oracle/database/oraInventory # cd ../oracle/product/11.2.0/grid/
root@wl /oracle/database/oracle/product/11.2.0/grid # ./root.sh
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /oracle/database/oracle/product/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /var/opt/oracle/oratab file...
Entries will be added to the /var/opt/oracle/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
2010-08-22 23:01:22: Checking for super user privileges
2010-08-22 23:01:22: User has super user privileges
2010-08-22 23:01:22: Parsing the host name
Using configuration parameter file: /oracle/database/oracle/product/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE
Creating OCR keys for user 'oracle', privgrp 'oinstall'..
Operation successful.
CRS-4664: Node wl successfully pinned.
Adding daemon to inittab
CRS-4123: Oracle High Availability Services has been started.
ohasd is starting
wl 2010/08/22 23:01:57 /oracle/database/oracle/product/11.2.0/grid/cdata/wl/backup_20100822_230157.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server
Updating inventory properties for clusterware
Oracle Universal Installer 시작 중...
스왑 공간 확인 중: 500MB 이상이어야 합니다.. 실제 10985MB 성공
The inventory pointer is located at /var/opt/oracle/oraInst.loc
The inventory is located at /oracle/database/oraInventory
'UpdateNodeList'을(를) 성공했습니다.
root@wl /oracle/database/oracle/product/11.2.0/grid #

oracle@wl /root/src/oracle/database # ./runInstaller


























root@wl /oracle/database/oracle/product/11.2.0/dbhome_1 # ./root.sh
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /oracle/database/oracle/product/11.2.0/dbhome_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin. Overwrite it? (y/n) [n]:
The file "oraenv" already exists in /usr/local/bin. Overwrite it? (y/n) [n]:
The file "coraenv" already exists in /usr/local/bin. Overwrite it? (y/n) [n]:
Entries will be added to the /var/opt/oracle/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
root@wl /oracle/database/oracle/product/11.2.0/dbhome_1 #



| RSS ATOM XHTML 5 CSS3 |
Copyright © 2004-2025 Jo HoSeok. All rights reserved. |