DB

[펌] Redhat9 + 오라클 9i R2 설치

_침묵_ 2005. 8. 23. 06:30

한컴리눅스에 오라클 설치를 실패하고,

가장 많은 자료가 올라와 있는 RedHat9에 오라클을 설치했습니다.

 

RedHat 9 다운로드 :http://ftp.redhat.com/pub/redhat/linux/9/en/iso/i386/

Oracle9iR2 다운로드 :http://otn.oracle.com/software/products/oracle9i/htdocs/linuxsoft.html

설치가이드 :http://kltp.kldp.org/stories.php?story=04/01/10/1953554&topic=27

 

INSTALL oracle9i On redhat 9.0

1. 참조문서
http://linux.oreillynet.com/lpt/a/4141
http://otn.oracle.co.kr/Starter/database/install/9ir2_install_viewlet_swf.html(강력추천)

2. 설치전 필요한 페키지
X-Window 필수
gcc-3.2.2-5
cpp-3.2.2-5
glibc-devel-2.3.2-11.9
binutils-2.13.90.0.18-9
compat-gcc-7.3-2.96.118.i386.rpm
compat-libgcj-7.3-2.96.118.i386.rpm
compat-libgcj-devel-7.3-2.96.118.i386.rpm
nss_db-compat-2.2-20.i386.rpm
pdksh-5.2.14-21
libncursers

3. 다운로드 소스
http://otn.oracle.com/software/products/oracle9i/htdocs/linuxsoft.html
적당한곳에 3개의 파일을 받아 압축을 푼다.
# zcat lnx_920_disk1.cpio.gz | cpio -idmv <-- http로 받지 않았을 때
# cpio -idmv < lnx_920_disk1.cpio.gz.cpio.gz <-- http로 받았을 때

4. 계정 및 그룹생성 시스템 설정
# groupadd dba
# adduser -g dba oracle

# vi /etc/sysctl.conf
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

# vi /etc/security/limits.conf
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384

만약 리붓팅하지 않을려면 다음과 같이한다.
# echo 250 32000 100 128 > /proc/sys/kernel/sem
# echo 536870912 > /proc/sys/kernel/shmmax
# echo 4096 > /proc/sys/kernel/shmmni
# echo 2097152 > /proc/sys/kernel/shmall
# echo 65536 > /proc/sys/fs/file-max
# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range

오라클은 최소 512MB의 메모리와 400MB의 스왑 공간을 필요로 한다. 따라서 부족하다면
임시적으로 스왑공간을 아래와 같이 만들어준다.

# dd if=/dev/zero of=tmp_swap bs=1k count=900000
# chmod 600 tmp_swap
# mkswap tmp_swap
# swapon tmp_swap

스왑해제
# swapoff tmp_swp
# rm tmp_swap


5. 환경변수 설정(여기서 부터 oracle 계정으로 바꾼다.)
$ vi .bash_profile
export ORACLE_BASE=/home/oracle
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0.1
export ORACLE_OWNER=oracle
export ORACLE_SID=oraccle
export ORACLE_TERM=xterm
#export TMPDIR=$ORACLE_BASE/tmp
#export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG='AMERICAN_AMERICA.KO16KSC5601'
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORAClE_HOME/oracm/lib:/lib:/usr/lib:/usr/local/lib
export LANG=C
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/oracm/bin

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib

$ /Where/Disk1/runInstaller <- 오라클 소스압축푼 디렉터리

6. 5번의 과정이 성공적으로 끝났다면 설치창이 뜬다.
언어설정에 korean을 추가하고 설치는 custem으로하여 +sqlplus를 체크하고 넘어간다.

설치 중 두번의 에러메세지가 나온다.
Error in invoking target install of makefile
/usr/ora9/product/9.2/network/lib/ins_oemagent.mk

위의 경우 무시하고 지나간다.

Error in invoking target install of makefile
/usr/ora9/product/9.2/ctx/lib/ins_ctx.mk

위의 경우는 X terminel을 하나 더 띄우고 oracle 계정으로 아래순서대로 실행한다.
$ cd $ORACLE_HOME/install
$ tail make.log
gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/ -L/opt/ora9/product/9.2/lib/
-L/opt/ora9/product/9.2/lib/stubs/ /opt/ora9/product/9.2/ctx/lib/ctxhx.o
-L/opt/ora9/product/9.2/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut
-lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9
-lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9

긁어 붙인다음 -ldl 을 추가한 후 엔터한다.

100% 설치후 루트권한으로 아래 명령을 실행시키라는 메세지가 뜬다.
/home/oracle/product/9.2.0.1/root.sh