보통은 오라클도 데비안 리눅스에 설치해서 사용하지만, RAC 구성을 위해서는 어쩔수 없이 CentOS를 이용해야만 한다. 아직 데비안 리눅스에서는 성공하지 못했기 때문이다.

CentOS 설치시, Memory는 1.5GB 이상, Swap은 2.2GB 이상으로 잡고, SELinux은 disabled 로 설정한다. Firewall도 실행되지 않도록 한다.

오라클 다운로드
아래 링크를 통해서 오라클을 다운로드 받는다.
Oracle Database 11g Release 2 (11.2) Software
Hosts File
/etc/hosts 파일을 아래와 같이 설정한다.
<IP-address>  <fully-qualified-machine-name>  <machine-name>
예를 들면, 아래와 같을 수 있겠다.
10.1.11.111    db1.urdomain.com    db1
커널 파라미터 설정
/etc/sysctl.conf 파일에 아래 내용을 추가하고 저장한다.
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586
아래 명령어를 실행하여 현재 파라미서 설정값으로 변경한다.
/sbin/sysctl -p
/etc/security/limits.conf 파일에 아래 내용을 추가한다.
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536
/etc/pam.d/login 파일에 아래 내용을 추가한다.
session    required     pam_limits.so
/etc/selinux/config 파일을 수정하여 SELinux를 Disable한다.
SELINUX=disabled
아래와 같이 해서 Firewall 을 멈추고, ntsysv 를 실행하여 iptables 에 언체크해둔다.
/etc/init.d/iptables stop 
셋업
아래 패키지를 설치한다. (From Enterprise Linux 5 DVD)
# cd /media/cdrom/Server
# rpm -Uvh binutils-2.*
# rpm -Uvh compat-libstdc++-33*
# rpm -Uvh elfutils-libelf*
# rpm -Uvh gcc-4.*
# rpm -Uvh gcc-c++-4.*
# rpm -Uvh glibc-2.*
# rpm -Uvh glibc-common-2.*
# rpm -Uvh glibc-devel-2.*
# rpm -Uvh glibc-headers-2.*
# rpm -Uvh ksh*
# rpm -Uvh libaio-0.*
# rpm -Uvh libaio-devel-0.*
# rpm -Uvh libgomp-4.*
# rpm -Uvh libgcc-4.*
# rpm -Uvh libstdc++-4.*
# rpm -Uvh libstdc++-devel-4.*
# rpm -Uvh make-3.*
# rpm -Uvh sysstat-7.*
# rpm -Uvh unixODBC-2.*
# rpm -Uvh unixODBC-devel-2.*
# rpm -Uvh pdksh*
# cd /
# eject
또는, yum 을 이용해서 자동으로 다운로드 받아서 설치한다.
# yum install binutils-2* compat-libstdc++-33* elfutils-libelf* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh* libaio-0.* libaio-devel-0.* libgomp-4.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh*
새로운 그룹과 사용자를 생성한다.
# groupadd oinstall
# groupadd dba
# groupadd oper
# groupadd asmadmin

# useradd -g oinstall -G dba,oper,asmadmin oracle
# passwd oracle
오라클을 설치할 디렉토리를 생성한다.
# mkdir -p /u01/app/oracle/product/11.2.0/db_1
# chown -R oracle:oinstall /u01
# chmod -R 775 /u01
oracle 사용자로 로그인하여 .bash_profile 파일에 아래 내용을 추가한다.
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=db1.localdomain; export ORACLE_HOSTNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
ORACLE_SID=DB11G; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi
파일 풀기
oracle 사용자로 로그인하여 unzip 으로 파일을 푼다.
# unzip linux_11gR2_database_1of2.zip
# unzip linux_11gR2_database_2of2.zip
파일을 풀면 database 라는 디렉토리가 생성된다. 이 안에 설치 파일들이 존재한다.
설치
Cygwin/X 등의 X서버 환경에서 아래와 같이 oracle 사용자로 로그인한다.
# ssh -Y oracle@오라클설치서버
database 디렉토리에서 아래 명령어를 입력하여 Oracle Universal Installer (OUI)를 실행한다.
$ ./runInstaller
설치순서는 아래와 같다.
  1. Configure Security Updates
  2. Select Install Option
  3. System Class
  4. Node Selection
  5. Select Install Type
  6. Typical Install Configuration
  7. Create Inventory
  8. Perform Prerequisite Checks
  9. Summary
  10. Install Product
  11. Database Configuration Assistant
  12. Database Configuration Assistant 2
  13. Execute Configuration Scripts
  14. Finish
설치후 작업
/etc/oratab 파일을 수정한다.
DB11G:/u01/app/oracle/product/11.2.0/db_1:Y
이로써 설치작업이 완료되었다. https://서버주소:1158/em/ 으로 접속해보자. 로그인 화면이 나오면 정상.

+ Recent posts