2008년 10월 25일 토요일

오라클 우분투 설치

공식적으로 오라클은 우분투를 지원하지 않는다. RedHat or Fedora 환경을 지원하고 있다.


그래서 일련의 과정의 흐름은 설치 파일이 우분투를 레드헷으로 인식하도록 만드는 데 목적이 있다.


 


다른 설치기 와 마찬가지로 필요한 라이브러리를 설치한다.


1. 터미널을 열고 설치에 필요한 기본 시탭틱을 설치한다.


 


$sudo apt-get install gcc binutils libaio1 lesstif2 lesstif2-dev make rpm libc6 libstdc++5 build-essentials

 


 


2. 시스템에 그룹과 오라클 유저를 만든다.


 


$sudo groupadd oinstall

$sudo groupadd dba

$sudo groupadd nobody

$sudo useradd -m oracle -g oinstall -G dba -s /bin/bash

$sudo passwd oracle

 


 


3. 오라클에 필요한 memory와 CPU resources를 위해 커널 파라미터를 수정한다.(메모리와 CPU자원이 충분하지 않으면 오라클 인스턴스가 올라가질 않는다. 물론 설치도 안됨.)

우선 파일 수정을 위해 gedit로 sysctl.conf파일을 연다.


$sudo gedit /etc/sysctl.conf

 


 


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

 


$sudo /sbin/sysctl -p

 




마지막으로 시스템에 security의 limits파일에 몇몇 작업을 해야된다.


$sudo vi /etc/security/limits.conf



파일의 제일 밑에 부분에 아래 정보를 복사해서 붙여넣기.


* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

 


우분투를 레드햇으로 속이기


 


$sudo ln -s /usr/bin/awk /bin/awk

$sudo ln -s /usr/bin/rpm /bin/rpm

$sudo ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so

$sudo ln -s /usr/bin/basename /bin/basename

$sudo mkdir /oracle

$sudo mkdir /oracle/9i

$sudo chown -R oracle:oinstall /oracle

$sudo chmod -R 775 /oracle

 


환경 변수 설정을 위해 오라클 계정 홈 폴더 밑의 아래 파일을 변경한다.(이것이 잘 먹는다)


 


$sudo gedit .bash_profile

 


파일의 제일 밑에 부분에 아래 정보를 복사해서 붙여넣기.


 


export ORACLE_BASE=/oracle

export ORACLE_HOME=/oracle/9i

export ORACLE_SID=orcl9

export PATH=$PATH:$ORACLE_HOME/bin

export ORACLE_TERM=xterm

export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601

export LANG=C

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

export LD_LIBRARY_PATH



#export TNS_ADMIN=$ORACLE_HOME/network/admin

#export NLS_LANG=AMERICAN

export PATH=$PATH:$ORACLE_HOME/bin



export LD_ASSUME_KERNEL=2.4.1 #없으면 glibc 2.0 error라고 하는데 시험은 안해 봤다 노가다 1번을  피해갈 수 있을 듯

export DISPLAY=sgcom_laptop:0.0

 


 


환경설정 변수 검사


 



$ su - oracle


$source .bash_profile

Password:

$ echo $ORACLE_BASE

/oracle

$ echo $ORACLE_HOME

/oracle/9i

$ exit

logout



 


 


레드햇 엔터프라이즈 릴리즈 파일을 만든다.


 


$sudo gedit /etc/redhat-release

 


파일 안에다가 이 내용을 적어 준다


 


Red Hat Enterprise Linux AS release 3 (Taroon)

 


오라클을 다운로드해서 압축을 푼다. 오라클 계정으로 풀면 더욱 좋다.


[root@localhost oracle]# zcat ship_9204_linux_disk1.cpio.gz | cpio -idmv


[root@localhost oracle]# zcat ship_9204_linux_disk2.cpio.gz | cpio -idmv


[root@localhost oracle]# zcat ship_9204_linux_disk3.cpio.gz | cpio -idmv


 


 


$/home/oracle/database/runInstaller

 



6-1.각종 Assistant들의 동작시키기 위한 팁


[root@dev ~]$ su - oracle

[oracle@dev ~]$ cd $ORACLE_BASE/jre

[oracle@dev ~]$ mv 1.1.8 1.1.8_

[oracle@dev ~]$ wget http://linuxsystem.co.kr/oracle/jre1.1.8.tar.gz

[oracle@dev ~]$ tar xvzf jre1.1.8.tar.gz

[oracle@dev jre]$ ls

1.1.8 1.1.8_ 1.3.1 jre1.1.8.tar.gz


이렇게 하니 다른 건 몰라도 Database Configuration Assistant 작동이 가능했다. 관련 파일 링크 : 여기


7. 설치 화면에서 부터는 Windows에서



설치하는 방법과 동일하지만 한가지 주의 해야 될 부분은 SID입력 부분이다. 설치 과정 4에서 환경변수 설정에서 입력한 SID인 orcl9을 입력하지 않으면 지금까지 한 작업이 뻘짓이 될 수 있다;;;;


 


8. 설치가 완료되면 시스템을 재부팅해주고 그놈 세션에서 원래 유저(예를 들면 kekedie)로 로그인후 터미널을 실행해 etc밑에 oratab파일에서 orcl9:/oracle/9i:N부분을 orcl9:/oracle/9i:Y로 수정한다. 덧붙여 설명하면 orcl9은 인스턴스이고 가운데 부분은 ORACLE_HOME 마지막 부분은 오라클 인스턴스의 자동 실행 여부(Y/N)이다.


 


$sudo gedit /etc/oratab

orcl9:/oracle/9i:N -> orcl9:/oracle/9i:Y

 


9. 터미널에서 오라클 유저로 로그인해 오라클 리스너의 절대 패스를 수정함.


$su - oracle

$vi $ORACLE_HOME/bin/dbstart

 




vi편집기에서 다음 라인을 찾은 다음


# Set this to bring up Oracle Net Listener

ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle

if [ ! $ORACLE_HOME_LISTNER ] ; then

echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"

else

LOG=$ORACLE_HOME_LISTNER/listener.log

 


ORACLE_HOME_LISTNER=/oracle/10g

 


10. 오라클을 사용하면 된다....


----------------------------------------------------------------------


여기까지는 긁어 온 내용이고 지금이 본 게임이다..


 


Not DISPLAY SET 이건 $DISPLAY 환경변수 설정을 해주면 넘어간다. 또다른 차원으로 나오지만...


 


./runInstaller: 62: Syntax error: word unexpected (expecting ")")


오라클 버그 runInstaller 실행시에는 반드시 /Disk1/install/linux 안에 있는 것을 실행 시켜 주라


 


Segmentation fault (core dumped)


두가지 대처 방법이 있다 /tmp에 있는 OraInstaller 임시 파일을 싹다 삭제하거나


설치 파일에 chmod 540 -R /home/oracle/Disk*/stage로 권한을 변경하는 거 oracle에 읽기 실행이 부과되어야 한다.


 


error while loading shared libraries: libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory


이건 필요한 모듈이 /usdr/lib에 없어서 생기는 오류이다. 우분투가 모든 것을 지원할 수 없으니 할 수 없이


ftp://ftp.jaist.ac.jp/pub/Linux/Fedora/core/5/i386/os/Fedora/RPMS/compat-libstdc++-296-2.96-135.i386.rpm을 어디에 받아 온다.


그리고


sudo alien --to-tgz compat*rpm


tar zxf compat*tgz


cd usr/lib


cp sudo cp libstdc++-2-libc6.1-1-2.9.0.so /usr/lib/libstdc++-libc6.1-1.so.2


순으로 실행한다.


 


libc2.0 not defined


 


/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference


유명한 오라클 패치 되시겠다.


p3006854_9204_LINUX.zip


첨부 파일을 클릭해서 연다. 압축을 풀고 생성되는 디렉토리로 들어가 *.sh 파일을 실행시켜라


 


그렇게 대충하면 오라클이 로딩되기는 할 것이나 Java Exception이 뜨면서 디스플레이를 찾을 수 없다고 나올 것이다.


하는수 없이 오라클 계정으로 로그인한다. 한글로 들어가면 설치 윈도우 텍스트가 깨지기 때문에 영어로 로그인


영어에서 charset이랑 언어팩을 설치하는 방식으로 접근해야 한다.


 


 


이 글은 스프링노트에서 작성되었습니다.

댓글 없음:

분류