1. 설치 내역 확인

A) OS 버전 확인

root 유저로 수행
cat /etc/oracle-release
cat /etc/redhat-release
lsb_release -id
uname -r
[root@rac1 ~]# cat /etc/oracle-release
Oracle Linux Server release 6.8

[root@rac1 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.8 (Santiago)

[root@rac1 ~]# lsb_release -id
Distributor ID:	OracleServer
Description:	Oracle Linux Server release 6.8

[root@rac1 ~]# uname -r
4.1.12-37.4.1.el6uek.x86_64

설치된 리눅스의 버전 정보를 확인합니다.

설치된 버전에 따라 출력되는 메시지는 다를 수 있습니다.

B) OS 패키지 확인

root 유저로 수행
rpm -q binutils-*
rpm -q compat-libcap1-*
rpm -q compat-libstdc++-33-*
rpm -q gcc-*
rpm -q gcc-c++-*
rpm -q glibc-*
rpm -q glibc-devel-*
rpm -q ksh
rpm -q libgcc-*
rpm -q libstdc++-*
rpm -q libstdc++-devel-*
rpm -q libaio-*
rpm -q libaio-devel-*
rpm -q libXext-*
rpm -q libXtst-*
rpm -q libX11-*
rpm -q libXau-*
rpm -q libxcb-*
rpm -q libXi-*
rpm -q make-*
rpm -q sysstat-*
[root@rac1 ~]# rpm -q binutils-*
binutils-2.20.51.0.2-5.44.el6.x86_64

[root@rac1 ~]# rpm -q compat-libcap1-*
compat-libcap1-1.10-1.x86_64

[root@rac1 ~]# rpm -q compat-libstdc++-33-*
compat-libstdc++-33-3.2.3-69.el6.x86_64

[root@rac1 ~]# rpm -q gcc-*
gcc-4.4.7-17.el6.x86_64

[root@rac1 ~]# rpm -q gcc-c++-*
gcc-c++-4.4.7-17.el6.x86_64

[root@rac1 ~]# rpm -q glibc-*
glibc-2.12-1.192.el6.x86_64
glibc-2.12-1.192.el6.i686

[root@rac1 ~]# rpm -q glibc-devel-*
glibc-devel-2.12-1.192.el6.x86_64

[root@rac1 ~]# rpm -q ksh
ksh-20120801-33.el6.x86_64

[root@rac1 ~]# rpm -q libgcc-*
libgcc-4.4.7-17.el6.x86_64
libgcc-4.4.7-17.el6.i686

[root@rac1 ~]# rpm -q libstdc++-*
libstdc++-4.4.7-17.el6.x86_64

[root@rac1 ~]# rpm -q libstdc++-devel-*
libstdc++-devel-4.4.7-17.el6.x86_64

[root@rac1 ~]# rpm -q libaio-*
libaio-0.3.107-10.el6.x86_64

[root@rac1 ~]# rpm -q libaio-devel-*
libaio-devel-0.3.107-10.el6.x86_64

[root@rac1 ~]# rpm -q libXext-*
libXext-1.3.3-1.el6.x86_64

[root@rac1 ~]# rpm -q libXtst-*
libXtst-1.2.2-2.1.el6.x86_64

[root@rac1 ~]# rpm -q libX11-*
libX11-1.6.3-2.el6.x86_64

[root@rac1 ~]# rpm -q libXau-*
libXau-1.0.6-4.el6.x86_64

[root@rac1 ~]# rpm -q libxcb-*
libxcb-1.11-2.el6.x86_64

[root@rac1 ~]# rpm -q libXi-*
libXi-1.7.4-1.el6.x86_64

[root@rac1 ~]# rpm -q make-*
make-3.81-23.el6.x86_64

[root@rac1 ~]# rpm -q sysstat-*
sysstat-9.0.4-31.el6.x86_64

오라클 소프트웨어 설치를 위해 필요한 OS 패키지가 모두 설치되었는지 확인합니다.

2. OS 설정 변경

A) 호스트 파일 수정

vi /etc/hosts
### Public
10.0.1.101 rac1
10.0.1.102 rac2
### Private
10.0.5.101 rac1-priv
10.0.5.102 rac2-priv
### Virtual
10.0.1.111 rac1-vip
10.0.1.112 rac2-vip
### SCAN
10.0.1.110 rac-scan

/etc/hosts 파일에 서버 정보를 추가합니다.

오라클 소프트웨어 설치를 정상적으로 진행하기 위해 정확한 정보를 입력해야 합니다.


B) 사전 설정 패키지 설치

root 유저로 설치
rpm -ivh oracle-rdbms-server-11gR2-preinstall-*.el6.x86_64.rpm
[root@rac1 ~]# cd /media/OL6.8\ x86_64\ Disc\ 1\ 20160518/Packages/

[root@rac1 Packages]# rpm -ivh oracle-rdbms-server-11gR2-preinstall-1.0-13.el6.x86_64.rpm
경고: oracle-rdbms-server-11gR2-preinstall-1.0-13.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
준비 중...               ########################################### [100%]
   1:oracle-rdbms-server-11g########################################### [100%]

11g R2 구성을 대비한 패키지를 설치합니다.

패키지 파일은 리눅스 설치 이미지를 이용하거나 http://yum.oracle.com 에서 다운로드할 수 있습니다.

C) tmpfs 수정

vi /etc/fstab
tmpfs                   /dev/shm                tmpfs   size=5g        0 0
root 유저로 수행
mount -o remount /dev/shm

오라클의 MEMORY_TARGET 파라미터를 사용하기 위해서 tmpfs를 변경해야 합니다.

기존에 설정된 tmpfs 값은 #로 주석 처리하거나 삭제합니다.

remount하여 바로 적용시킵니다.

D) 시스템 변수 수정

vi /etc/sysctl.conf
kernel.sem    = 250   32000   100   128
kernel.shmmni = 4096
fs.file-max   = 6815744
net.ipv4.ip_local_port_range = 9000   65535
net.core.rmem_default = 262144
net.core.rmem_max     = 4194304
net.core.wmem_default = 262144
net.core.wmem_max     = 1048576
fs.aio-max-nr         = 1048576 

커널 변수를 수정하는 작업입니다.

 

oracle-rdbms-server-11gR2-preinstall 패키지가 설치되었다면 이미 반영된 내용이므로 생략해도 됩니다.

하지만 해당 패키지를 따로 설치하지 않은 상태에서 오라클 소프트웨어를 설치하려면 왼쪽의 내용을 /etc/sysctl.conf에 추가해야 합니다.

E) DNSMASQ 서비스 기동

root 유저로 수행
service dnsmasq start
chkconfig dnsmasq on
[root@rac1 ~]# service dnsmasq start
Starting dnsmasq:                                          [  OK  ]

별도의 DNS 서비스 없이 SCAN을 DNS에 등록된 것처럼 처리하기 위해 DNSMASQ 프로세스를 활성화합니다.

F) 미사용 프로세스 중지

root 유저로 수행
chkconfig --level 123456 xinetd off
chkconfig --level 123456 cups off
chkconfig --level 123456 smartd off
chkconfig --level 123456 iptables off
chkconfig --level 123456 ip6tables off
chkconfig --level 123456 bluetooth off

추가적인 리소스 확보를 위해 기본적으로 실행중인 불필요한 OS 프로그램을 off 시킵니다.

G) CTSS 사용을 위한 NTP 중지

root 유저로 수행
mv /etc/sysconfig/ntpd /etc/sysconfig/ntpd.original
mv /etc/ntp /etc/ntp.original
mv /etc/ntp.conf /etc/ntp.conf.original

실습 환경에서는 CTSS를 NTP 대신 사용할 것이므로 NTP 서비스를 중지하고 관련 파일을 삭제해야 합니다.

NTP 서비스가 기동중이거나 관련 파일이 있는 경우 CTSS는 observer mode로만 기동되므로 정리가 필요합니다.

H) SELINUX 설정 변경

vi /etc/sysconfig/selinux
SELINUX=permissive

Selinux 모드를 permissive로 변경합니다.

I) User Processes 설정 변경

vi /etc/security/limits.d/90-nproc.conf
# Change this
*          soft    nproc    1024

# To this
* 		   - 	   nproc    16384

프로세스 한도 제한을 오라클 권고사항에 맞게 1024에서 16384로 수정합니다.

3. 그룹 및 사용자 설정

A) 그룹 & 사용자 설정 변경

root 유저로 수행
# groupadd oinstall
# groupadd dba
groupadd oper
groupadd asmdba
groupadd asmoper
groupadd asmadmin
 
usermod -g oinstall -G dba,oper oracle
useradd -g oinstall -G dba,asmdba,asmoper,asmadmin grid
passwd oracle
passwd grid
[root@rac1 ~]# groupadd oper
[root@rac1 ~]# groupadd asmdba
[root@rac1 ~]# groupadd asmoper
[root@rac1 ~]# groupadd asmadmin

[root@rac1 ~]# usermod -g oinstall -G dba,oper,vboxsf oracle
[root@rac1 ~]# useradd -g oinstall -G dba,asmdba,asmoper,asmadmin,vboxsf grid

[root@rac1 ~]# passwd oracle
oracle 사용자의 비밀 번호 변경 중
새  암호:
잘못된 암호: 사전에 있는 단어를 기반으로 합니다  
잘못된 암호: 너무 간단함
새  암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
 
[root@rac1 ~]# passwd grid
grid 사용자의 비밀 번호 변경 중
새  암호:
잘못된 암호: 사전에 있는 단어를 기반으로 합니다  
잘못된 암호: 너무 간단함
새  암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.

설치를 진행할 사용자 계정과 그룹을 생성 또는 추가합니다.

oracle-rdbms-server-11gR2-preinstall 패키지가 설치되었다면 oracle 유저와 oinstall, dba 그룹은 이미 생성되어 있습니다.

vboxsf 그룹은 VirtualBox의 Guest Addition을 사용하기 위한 그룹으로, 실제 운영 환경에서 Guest Addition을 사용하지 않는다면 추가하지 않습니다.

passwd 명령어로 각 계정의 암호를 지정해주면 됩니다.

B) 사용자별 프로세스 제한 변경

vi /etc/security/limits.conf
grid    hard   nproc   16384
grid    hard   nofile  65536

리소스 제한을 위한 사용자별 설정값을 입력합니다.

오라클을 설치하는 OS 계정에 맞게 oracle 또는 grid 유저별로 제한값을 입력합니다

C) 설치 경로 생성 및 권한 부여

root 유저로 수행
mkdir -p /u01/app/oracle/product
chown -R grid:oinstall /u01
chmod -R 770 /u01

오라클 소프트웨어 설치를 위한 경로를 생성하고, 해당 경로에 대한 권한과 소유권을 수정합니다.

D) root 유저 환경 설정

root 유저 : vi .bash_profile
export GRID_HOME=/u01/app/11.2.0/grid
export PATH=$GRID_HOME/bin:$PATH


E) grid 유저 환경 설정

grid 유저 : vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_HOSTNAME=rac1     # rac2 => 2번 노드
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/11.2.0/grid
export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_HOME=$GRID_HOME
export ORACLE_SID=+ASM1     # +ASM2 => 2번 노드
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PS1='[\u@$ORACLE_SID \W]$ '

grid 계정으로 접속한 후에 .bash_profile을 수정합니다.

F) oracle 유저 환경 설정

oracle 유저 : vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_HOSTNAME=rac1     # rac2 => 2번 노드
export ORACLE_UNQNAME=racdb
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/11.2.0/grid
export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_HOME=$DB_HOME
export ORACLE_SID=racdb1     # racdb2 => 2번 노드
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_KOREA.AL32UTF8
export PS1='[\u@$ORACLE_SID \W]$ '

마찬가지로 oracle 계정으로 접속하여 .bash_profile을 수정합니다.

  • 레이블 없음