본문 바로가기

Oracle

Oracle 10gR2 on RHEL

###최소 메모리 요구사양은 512MB, swap 공간의 최소 요구사항은 1GB입니다. swap 공간은 2GB 이하 메모리를 장착한 시스템의 경우 메모리 용량의 2배로, 2GB를 넘는 메모리를 장착한 시스템의 경우 메모리 용량의 1~2배 사이의 용량으로 설정되어야 합니다.

grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo

###Oracle Database 10g 소프트웨어를 위해 2.5 GB의 공간이 필요하며, 이와 별도로 데이타베이스를 위해 1.2 GB의 추가 공간이 요구됩니다. /tmp 디렉토리에는 최소한 400 MB의 여유 공간이 있어야 합니다. 디스크 여유 공간을 확인하기 위해, 아래와 같이 명령을 수행합니다:

df -h


###오라클 그룹 및 사용자 계정 생성

Oracle Database 10g 소프트웨어의 설치 및 관리에 사용할 Linux 그룹 및 사용자 계정을 생성합니다. 사용자 계정은 ‘oracle’, 그룹은 ‘oinstall’과 ‘dba'로 명명합니다. root 계정으로 아래 명령을 실행합니다:

/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
id oracle

###오라클 계정의 패스워드를 설정합니다:

passwd oracle

###root 계정에서 아래 명령을 실행합니다t:

mkdir -p /u01/app/oracle
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01/app/oracle /u02/oradata
chmod -R 775 /u01/app/oracle /u02/oradata


### Linux 운영체제를 설치한 경우라면 커널 매개변수가 디폴트 값으로 설정
cat >> /etc/sysctl.conf <<EOF
  kernel.shmall = 2097152
  kernel.shmmax = 2147483648
  kernel.shmmni = 4096
  kernel.sem = 250 32000 100 128
  fs.file-max = 65536
  net.ipv4.ip_local_port_range = 1024 65000
  net.core.rmem_default = 262144
  net.core.rmem_max = 4194304
  net.core.wmem_default = 262144
  net.core.wmem_max = 262144
  net.ipv4.tcp_rmem = 1048576 1048576 1048576
  net.ipv4.tcp_wmem = 262144 262144 262144
EOF

/sbin/sysctl -p


cat >> /etc/security/limits.conf <<EOF

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF



cat >> /etc/pam.d/login <<EOF
session     required      pam_limits.so
EOF


cat >> /etc/profile <<EOF
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF


####


###설정을 확인하기 위해 아래 명령을 실행합니다:

/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range

###변경된 설정을 반영시킵니다:

/sbin/sysctl -p

###oracle 사용자 계정의 Shell Limit 설정

오라클은 Linux 계정 별로 실행되는 프로세스와 열린 파일의 수를 제한하는 것을 권장합니다. 이를 위해, root 계정에서 아래 명령을
복사하여 붙여 넣는 방법으로 실행합니다:

cat >> /etc/security/limits.conf <<EOF
oracle               soft    nproc   2047
oracle               hard    nproc   16384
oracle               soft    nofile  1024
oracle               hard    nofile  65536
EOF

cat >> /etc/pam.d/login <<EOF
session    required     /lib/security/pam_limits.so
EOF

###oracle 계정으로 로그인한 뒤 (bash 또는 ksh을 사용하는 경우) bash_profile
또는 .profile 파일에 아래 라인을 추가합니다:

cat >> ~/.bash_profile <<EOF
umask 022

ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
ORACLE_SID=orcl
PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

EOF


rpm -q binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel compat-db compat-libstdc++ control-center gnome-libs pdksh xorg-x11-deprecated-libs openmotif21

(binutils-2.15.92.0.2-18
compat-libstdc++-33.2.3-47.3
elfutils-libelf-0.97-5
elfutils-libelf-devel-0.97-5
gcc-3.4.5-2
gcc-c++-3.4.5-2
glibc-2.3.4-2.19
glibc-common-2.3.4-2.19
glibc-devel-2.3.4-2.19
glibc-headers-2.3.4-2.19
libaio-devel-0.3.105-2
libaio-0.3.105-2
libgcc-3.4.5
libstdc++-3.4.5-2
libstdc++-devel-3.4.5-2
make-3.80-5
sysstat-5.0.5
unixODBC-2.2.11
unixODBC-devel-2.2.11
compat-db-4.1.25-9
compat-libstdc++-296-2.96-132.7.2
control-center-2.8.0-12
gnome-libs-1.4.1.2.90-44.1
pdksh-5.2.14-30
xorg-x11-deprecated-libs-6.8.1-23.EL
openmotif21-2.1.30-11.RHEL4.2 (Required to install Oracle Demos)
)