Database Sarang Net 에 있는 자료를 수정했습니다.

http://database.sarang.net/database/oracle/install/oracle816/816onRedhat7/oracle-linux.html

와우 리눅스 7.1(Paran) 에서 오라클 8.1.7 설치하기

작성자 : 장형화 ( 서울시립대학교 전산통계학과 , hhjang97@venus.uos.ac.kr )

리눅스가 일반인들에게나 엔터프라이즈 시장에서 좀더 각광을 받게 된 이유 중의 하나가 메이저급의 상용데이터 베이스회사의 지원을 빼놓을 수는 없을 것이다. 그만큼 엔터프라이즈 시장에서는 데이터베이스가 필수이기 때문이다.

상용데이터베이스 중에서 가장 인기 있는 오라클 데이터 베이스의 설치방법과 활용방법에 대하여 알아보도록 하자.

1. Paran 7.1에 오라클 8.1.7 의 설치

오라클 8.1.7 을 설치하기 위한 최선의 배포본은 래드햇 6.2 이다. 래드햇 7.0은 glibc가 2.2x 로 업그레이드 되면서 기존의 glibc 2.1 과 호환되던 오라클데이터베이스가 제대로 설치가 안되기 때문이다. 하지만 이장에서는 리눅스 7.0에서 오라클데이터 베이스를 설치하는 방법에 대하여 알아보도록 하겠다.

1) 설치하기 위하여 필요한 것들

- Radhat Linux 7.0 ( 국내의 다른 7.0 배포본도 상관이 없다. 필자는 와우리눅스 7.1 파란버전을 설치했다. )

- Oracle8i Enterprise Edition Release 3 (8.1.7.0.1) for Linux (Intel), with OPS

: http://otn.oracle.com에서 다운받는다.

- JDK 1.1.8 : http://www.blackdown.org 에서 jdk118_v3-glibc-2.1.3.tar.bz2 를 다운로드 받는다. 해당 파일에 포함되어 있는 JRE가 오라클설치프로그램에 필요하기 때문입니다.

- glibc 2.1 : i386-glibc-2.1-linux.tar.gz 를

http://www.asahi-net.lkams.kernel.org/pub/software/libs/glibc/hjl/sdk/2.1/ 에서 다운로드 받는다.

2) 설치 따라하기

오라클 데이터 베이스를 설치하기 위하여 많은 인내력이 필요하다. 최소한 2-3시간 정도를 투자할 생각을 하고 설치에 임하는 것이 좋겠다. 그럼 시작하도록 하자.

** root 사용자로 하여야 할 일들

2-1) JDK 1.1.8 의 설치

http://www.blackdown.org 에서 다운로드 받은 jdk118_v3-glibc-2.1.3.tar.gz2을 설치한다. 이때 해당 파일은 /usr/local 에 있다고 가정한다.

user> su - root

root> cd /usr/local

root> bunzip2 jdk118_v3-glibc-2.1.3.tar.bz2

root> tar xvf jdk118_v3-glibc-2.1.3.tar

root> ln -s /usr/local/jdk118_v3 /usr/local/java

위와 같이 한후 /usr/local/java 디렉토리가 제대로 존재하는지 확인하도록 합니다.

2-2) glibc2.1 의 설치

오라클 데이터 베이스를 제대로 설치하기 위하여는 glibc 2.1이 필요합니다. 오라클 데이터베이스를 생성할때 사용되어지는 원래( glibc 2.2x ) 포함되어져 있는 gcc, cc, ld 를 사용할 때 문제가 발생하기 때문입니다. 그러므로 오라클 데이터베이스를 설치할 때 gcc, cc, ld 를 대체하여 사용하여야 합니다. 설치가 끝난후 원래대로 되돌리면 됩니다. 이때 i386-glibc-2.1-linux.tar.gz 파일은 / 에 있다고 가정을 합니다.

user> su - root

root> cd /lib

root> mv i686/ i686_bak

- glibc 설정

root> cd /

root> tar xvfz /opt/i386-glibc-2.1-linux.tar.gz

root> cd /usr/bin

root> mkdir saved

root> mv gcc cc ld saved

root> ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc

root> ln -s gcc cc

root> ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld

root> cd /usr/lib

root> mkdir saved

root> mv libc.so libdl.so libm.so libpthread.so saved

root> mv libc.a libdl.a libm.a libpthread.a saved

2-3) Oracle8i를 설치하기 전에 준비사항 ( 환경설정 )

오라클데이터 베이스를 설치하기 위하여 특별한 group, user 를 설정할 필요가 있습니다.

오라클데이터베이스를 사용하기 위한 그룹인 dba 와 오라클 사용자인 oracle 을 아래와 같이 설정합니다.

root> groupadd -g 5000 dba

root> adduser -g dba oracle

root> passwd oracle // 오라클사용자 oracle 의 암호를 변경

오라클 데이터 베이스가 설치될 마운트 포인터의 소유권을 변경하여 줍니다. 오라클 데이터 베이스를 설치할 마운트 포인트를 /home/oracle 로 가정합니다. 실제로 안정적으로 사용하기 위하여는 4개의 마운트 포인트를 만들어야 합니다.

root> chown oracle.dba /home/oracle

root> chmod 755 /home/oracle

2-4) 오라클 관련 환경 설정 추가하기

- 환경설정 내용 중 ORACLE_SID 는 하나의 시스템에 여러개의 오라클데이터 베이스가 설치될 때 구분할 수 있도록 하여주는 아이디입니다. 필자는 orasid 라고 이름을 지었습니다. 그리고 ORACLE_BASE 는 오라클을 설치할 위치를 지정해 주시면 됩니다.

- oracle.sh 파일을 만들어서 설정을 추가합니다.

root> vi /etc/profile.d/oracle.sh

export ORACLE_BASE=/ora

export ORACLE_HOME=$ORACLE_BASE/product/8.1.7

export ORACLE_OWNER=oracle

export ORACLE_SID=orasid

umask 022

# 설치를 위한 임시 디렉토리

export TMPDIR=$ORACLE_BASE/tmp

# java & jre 경로

export PATH=.:$ORACLE_HOME/bin:/usr/local/jdk/bin:$PATH

# 오라클 환경 설정

export TNS_ADMIN=$ORACLE_HOME/network/admin

export NLS_LANG=Korean

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

export LANG=C

- 환결 설정을 읽을수 있도록 권한을 변경한다.

root> chmod 755 /etc/profile.d/oracle.sh

** oracle 사용자로 하여야 할 일

2-5) tmp 디렉토리 만들기

오라클 데이터베이스를 설치할 때 임시파일을 저장할 수 있도록 아래와 같이 tmp 디렉토리를 만들어 줍니다.

oracle> mkdir /home/oracle/tmp

3) 오라클 8i의 설치

준비가 끝났다면 이제 실제로 오라클데이터 베이스를 설치하도록 한다.

3-1) X Window 실행하기

오라클 8i 는 기본적으로 GUI 환경에서 설치를 하므로 엑스윈도우를 지원해줘야 한다. 엑스윈도우로 oracle 사용자로 로그인한다.

oracle> startx

3-2) 오라클 압축풀기

technet.oracle.com 에서 다운로드 받은 파일을 압축을 푼다. ( technet.oracle.com 에서 다운로드 받은 linux81701.tar은 /tmp 디렉토리에 있다고 가정한다. )

oracle> cd /tmp

oracle> tar xvf linux81701.tar

oracle>

3-3) 설치 프로그램 실행하기

압축이 풀린 디렉토리로 이동하면 runInstaller 라는 설치파일이 있다. runInstaller 를 실행한다. ( 만약 linux 용 오라클 시디가 있다면 디렉토리에 복사한 후 runInstaller 를 실행한다. )

oracle> cd Disk1/install/linux/

oracle> ./runInstaller

3-4) 실행이 되면 아래의 그림과 같이 환영의 메시지가 나온다. Next를 클릭하자.

3-5) 현재 설치파일들의 위치와 오라클이 설치될 위치를 지정한다. 그림에서 보면 알 수 있듯이 /etc/profile.d/oracle.sh 에서 설정한 ORACLE_HOME디렉토리가 파일들이 설치될 위치라는 것을 알 수가 있다. 확인 후에 Next 를 클릭하자.

3-6) 오라클 사용자 그룹을 지정합니다. dba 라고 기입한 후 Next버튼을 누릅니다.

3-7) 3-6)에서 Next를 누르면 root사용자로 orainstRoot.sh 을 실행하라는 메시지가 나옵니다. 한텀을 하나 연 후 $ORACLE_HOME/orainstRoot.sh 을 실행합니다. 실행한 후에 Retry 버튼을 클릭합니다.

3-8) 설치할 것은 오라클 데이터 베이스 서버이므로 첫번째 항목을 선택을 선택한 후 Next버튼을 클릭합니다.

3-9) 오라클 데이터베이스를 설치하기 위하여 반드시 Custom 을 선택합니다. 선택한 후 Next버튼을 누릅니다.

3-10) 설치할 항목이 아래와 같이 출력이 됩니다. 이때 Product Languages 버튼을 클릭하여 한국어(Korean)을 추가하여 준 후 OK를 누릅니다. 그 후에 Next버튼을 누릅니다.

3-11) 아래와 같은 화면이 나오면 Next를 누릅니다.

3-12) 데이타 베이스의 관리자 그룹을 dba로 지정한 후 Next 버튼을 클릭합니다.

3-13) 데이터베이스 생성유무를 물어보는 말이 나오면 No 를 선택합니다. 데이터 베이스 생성은 나중에 dbasist 프로그램을 이용하여 만들어 줄 것입니다. Next를 누릅니다.

3-14) 설치할 방법에 대한 목록이 나옵니다. 목록을 확인한 후 Next버튼을 누릅니다.

3-15) 아래와 같이 오라클 관련 파일들이 설치가 됩니다. 멈출때까지 기다립니다.

3-16) 설치가 완료되면 아래와 같은 경고창이 뜹니다. 잘 읽어보면 알겠지만 $ORACLE_HOME/root.sh 을 root 사용자로 실행하라는 것입니다. 한텀을 하나 연후 root 로 권한을 바꾼 후 root.sh 을 실행합니다.

- root.sh 을 실행하면 아래와 같이 수행되는 것을 알 수 있습니다. 수행 후에 oratab 파일이 "/etc" 디렉토리에 잘 생성되었는지 확인 하여 주시기 바랍니다.

3-17) 설치가 끝나면 Net8 설정 화면이 뜹니다. 환영의 메시지를 읽은 후에 Next버튼을 클릭합니다.

끁

3-18) 디렉토리 서비스를 설정하겠냐는 메시지가 나오면 No. 를 선택한 후 Next버튼을 누릅니다.

3-19) Net8 listener의 이름을 물어보는 항목이 나오면 기본값인 LISTENER을 건드리지 않고 Next버튼을 누릅니다. ( Listener 은 외부 사용자에게 오라클 데이터베이스를 사용하게 하여주는 것입니다. Listener 가 알맞게 설정되어 있지 않다면 외부에서 오라클 데이터베이스에 접속 할 수 없습니다. )

3-20) 아래와 같은 화면이 나오면 Next를 누릅니다.

3-21) 오라클 Listener가 기본적으로 사용하는 1521 포트를 선택한 후 Next를 누릅니다.

3-22) 또다른 리스너를 선언하겠냐는 메시지가 나오면 No 를 선택한 후 Next 버튼을 누릅니다.

3-23) 리스너 설정이 끝나면 환영의 메시지가 나옵니다. 계속하여 기본값으로 Next 버튼을 누릅니다. 아래와 같이 Net8 설정이 끝났다는 메시지가 나오면 Finish 버튼을 누릅니다.

3-24) 아래와 같이 End Of Installation 화면이 나오면 Exit 버튼을 클릭 하여 종료합니다.

3-25) runInstaller 가 실행이 종료된 후에 adapter 명령을 실행하여 Net8 설정에 TCP/IP가 제대로 설치가 되어있는지 확인을 합니다. 만약 설치가 되지 않았다면 위의 과정을 다시 해야합니다. 아래의 그림처럼 TCP/IP가 제대로 설치가 되어있는지 확인 합시다.

3-26) 3-25) 에서 TCP/IP가 설치가 잘 되었는지 확인 하였다면 이번에는 데이터베이스를 설치하기 위하여 dbassist 를 실행합니다. 실행되면 아래와 같은 화면이 출력됩니다. 데이터 베이스를 생설할 것이므로 NEXT버튼을 누릅니다. ( 현재 데이터베이스가 설치되어 있지 않으므로 다른 메뉴는 비활성화 되어 있습니다. )

3-27) 데이터베이스 설치시간을 절약하기 위하여 Typical 을 선택한 후 Next버튼을 누릅니다. Custom을 선택하였을 경우에는 3-4시간이 소요될 수 있습니다.

3-28) 아래와 같은 화면이 나오면 CD로 부터 데이터베이스 파일을 복사하는 것을 선택합니다. 이미 설치를 빠르게 하기 위하여 기본적인 셋팅으로 만들어진 데이터베이스 파일이 존재합니다. 인터넷에서 다운로드 받은 오라클데이터베이스도 압축을 풀면 CD와 같은 내용입니다. 그러므로 첫번째 것을 선택한 후 Next 버튼을 누릅니다.

3-29) 생성할 데이터베이스의 글로벌 데이터 베이스 이름을 지정합니다. 필자는 oracle.hostname.com 라고 이름을 지정하였습니다. 이름을 지정하였다면 Finish 버튼을 클릭합니다.

3-30) 데이터베이스의 생성이 끝나면 아래와 같이 관리자 아이디의 암호가 정해졌다는 경고창이 뜹니다. ( system 사용자 : manager , sys 사용자 : change_on_install )

3-31) 확인을 누르면 데이터 베이스파일이 카피하는 화면이 나옵니다. 그 후에 다시 경고창이 뜨면서 데이터 베이스 생성이 끝났다는 메시지가 나오면 데이터 베이스의 설치는 완료입니다.

4) 리스너의 설정

오라클데이터베이스의 설치가 종료되면 $ORACLE_HOME/network/admin 디렉토리 아래에 있는 listener.ora 파일을 수정하여야 합니다. listener.ora 파일은 오라클리스너의 설정파일입니다. listener.ora 파일의 설정이 잘못되어있다면 외부에서 오라클 데이터베이스에 접속할 수가 없는 문제가 발생합니다.

listener.ora 파일을 vi 와 같은 에디터로 열어준 후에 "( HOST = ???)" 이라고 적혀있는 부분을 찾은 후 ??? ( 실제로 물음표는 아니고 여러분의 host 이름이 적혀있을 것입니다. ) 에 오라클데이터베이스가 설치된 ip 로 바꿔 적습니다.

2. 오라클 데이터 베이스의 시동과 종료.

오라클 데이터베이스를 설치하였다면, 가장 기본적으로 데이터베이스를 가동하고 종료하는 방법에 대하여 알고 있어야 합니다. 오라클 데이터베이스는 안전한 방법으로 가동하고 종료하지 않을 경우 문제가 발생할 수가 있습니다.

오라클의 가동.

1) svrmgrl 을 실행

oracle> svrmgrl [enter]

2) svrmgrl 안에서 connect internal 명령을 실행

svrmgrl> connect internal

접속되었습니다.

3) startup 명령을 실행

svrmgrl> startup

데이터베이스 마운트 메시지가 보여집니다.

4) exit 명령으로 svrmgrl 을 종료

5) 오라클 리스너의 가동

oracle> lsnrctl start

오라클데이터 베이스의 종료

1) svrmgrl 을 실행

oracle> svrmgrl [enter]

2) svrmgrl 안에서 connect internal 명령을 실행

svrmgrl> connect internal

접속되었습니다.

3) shutdown abort 명령을 수행하여 데이터베이스를 즉시 종료합니다.

svrmgrl> connect abort

4) startup명령으로 데이터베이스를 다시 가동합니다.

svrmgrl> startup

5) shutdown normal 명령을 수행하여 완전히 데이터베이스를 종료합니다.

svrmgrl> shutdown normal

6) 오라클 리스너를 종료합니다.

oracle> lsnrctl stop