본문 바로가기

스크립트

CentOS 4에서 Oracle 11g R2를 설치하는 스크립트

반응형

CentOS 4에서 Oracle 11g R2를 설치하는 스크립트

스크립트 파일 생성

vim oracle_install.sh
#!/bin/bash

# Oracle 설치에 필요한 패키지 설치
yum -y install compat-libstdc++-33 binutils elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel glibc-headers gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++ make sysstat unixODBC unixODBC-devel unzip

# Kernel 및 시스템 파라미터 설정
cat >> /etc/sysctl.conf << EOF
kernel.shmall = 4294967296
kernel.shmmax = 68719476736
kernel.shmmni = 4096
kernel.semopm = 100
kernel.sem = 250 32000 100 128

fs.file-max = 6915744
fs.aio-max-nr = 1048576

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 4194304
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
EOF

# sysctl 설정 적용
sysctl -p

# 계정 및 그룹 생성
groupadd oinstall
groupadd dba
useradd -m -g oinstall -G dba oracle
echo 'oracle' | passwd --stdin oracle

# Oracle 설치 디렉토리 생성 및 권한 설정
mkdir -p /DATA/app/oracle
chown -R oracle:oinstall /DATA/app/oracle
chmod -R 775 /DATA/app/oracle

mkdir -p /DATA/app/oracle/oraInventory
chown -R oracle:oinstall /DATA/app/oracle/oraInventory
chmod -R 775 /DATA/app/oracle/oraInventory

# SELinux 비활성화
sed -i 's/enforcing/disabled/g' /etc/sysconfig/selinux

# Oracle User Limits 설정
cat >> /etc/security/limits.conf << EOF
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle soft memlock unlimited
oracle hard memlock unlimited
EOF

# PAM 로그인 설정
cat >> /etc/pam.d/login << EOF
session required pam_limits.so
EOF

# Profile 설정
cat >> /etc/profile <<EOF
if [ \$USER = "oracle" ]; then
  if [ \$SHELL = "/bin/bash" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
  umask 022
fi
EOF

# C Shell 로그인 설정
cat >> /etc/csh.login <<EOF
if ( \$USER == "oracle" ) then
  limit maxproc 16384
  limit descriptors 65536
  umask 022
endif
EOF

# Oracle 사용자의 .bash_profile 설정
cat >> /home/oracle/.bash_profile << EOF
export ORACLE_BASE=/DATA/app/oracle
export ORACLE_HOME=/DATA/app/oracle/dbhome
export TNS_ADMIN=\$ORACLE_HOME/network/admin
export PATH=\$PATH:\$ORACLE_HOME/bin
export ORACLE_SID=ORCL
export ORACLE_HOME_LISTNER=\$ORACLE_HOME/bin/lsnrctl
export TMP=/tmp
export TMPDIR=\$TMP
EOF

스크립트 실행 권한 부여

chmod +x oracle_install.sh

스크립트 실행

./oracle_install.sh

 

이 스크립트는 Oracle 설치 전에 필요한 설정을 자동화하기 위한 것입니다.

 

728x90
반응형