'redhat 에 oracle 설치'에 해당되는 글 1건

  1. 2009.07.04 redhat 에 oracle 설치
02.Oracle/DataBase2009. 7. 4. 11:18
반응형

1.       oracle 다운로드 및 압축해제

2.       oracle 유저생성 및 권한부여

3.       pre-install RPM

4.       jdk 설치

5.       공유메모리 및 세마포 설정

6.       오라클 사용자 초기화 파일 구성

7.       오라클 셋업

8.       Database 시작과 종료 TIP & TECH

 

1. oracle 다운로드 및 압축해제

오라클을 설치하시려면 오라클 파일 혹은 시디가 있어야 겠죠

시디면 상관없지만 파일을 받아서 설치 할 경우 아래를 따라하세요

 

zcat ship_lnx_920_disk1.cpio.gz | cpio idmv

zcat ship_lnx_920_disk2.cpio.gz | cpio -idmv

zcat ship_lnx_920_disk3.cpio.gz | cpio -idmv

disk1, disk2, disk3이 생기고 생긴 파일들은 폴더를 하나 생성해서 이동시킨다

여기서는 /home/oracle로 이동

 

시디의 경우에는 바탕화면에 아이콘이 생성됩니다.

 

2. oracle 유저생성 및 권한부여

아래의 명령어로 oracle 유저생성 및 권한부여를 하셔야 됩니다

groupadd dba

useradd oracle g dba

chown R oracle.dba /home/oracle

chmod 777 / home

chmod 777 /home/oracle

 

3. pre-install RPM

 

오라클 설치시에 반드시 필요한 패키지들로 보통 레드햇 9.0을 기준으로

풀패키지 설치시 대부분 설치가 되어있습니다.

 

그러나 빨간 글씨의 패키지는 오라클 메타링크에서 다운을 받으셔야 되는데

메타링크 계정을 만드는 방법이 어렵습니다.

문의주시면 파일을 보내드릴께요

 

* Required OS Components

            - compat-db-4.1.25-9

            - compat-gcc-32-3.2.3-47.3

            - compat-gcc-32-c++-3.2.3-47.3

            - compat-oracle-rhel4-1.0-3

            - compat-libcwait-2.0-1

            - compat-libgcc-296-2.96-132.7.2

            - compat-libstdc++-296-2.96-132.7.2

            - compat-libstdc++-33-3.2.3-47.3

            - gcc-3.4.3-9.EL4

            - gcc-c++-3.4.3-9.EL4

            - gnome-libs-1.4.1.2.90-44

            - gnome-libs-devel-1.4.1.2.90-44

            - libaio-devel-0.3.102-1

            - libaio-0.3.102-1

            - make-3.80-5

            - openmotif21-2.1.30-11

            - xorg-x11-deprecated-libs-devel-6.8.1-23.EL

            - xorg-x11-deprecated-libs-6.8.1-23.EL

 

The compat-oracle-rhel4-1.0-3 and compat-libcwait-2.0-1 packages are available

from Oracle Metalink

While installing the patch you might receive the warning. It is a normal behaviour.

 

. 의존성이 있는 RPM들은 같이 설치하여야 합니다.

보통 풀패키지로 설치 했을 때 대부분의 패키지들이 깔리지만 오라클의 메타링크에서 제공하는 패키지는 다운을 받아서 설치해야 합니다.

 

레드햇 9에서는

xorg-x11-deprecated-libs-devel-6.8.1-23.EL

compat-libgcc-296-2.96-132.7.2

openmotif21-2.1.30-11
위 패키지를 설치 안해도 잘 깔린다고 합니다.

 

4. jdk설치

 

오라클 설치시 반드시는 아니지만 여러 오류를 피해가시고 싶으면 jdk를 설치하시면 됩니다

다운로드 :

RPM in self-extracting file(j2sdk-1_4_2_08-linux-i586-rpm.bin, 33.64M)

chmod +x를 주고 설치

rpm Uvh로 설치

/usr/java/j2sdk-1_4_2_08에서 /usr/local/j2sdk-1_4_2_08로 이동후

$/usr/local/에서 ln s j2sdk-1_4_2_08 java

/etc/profile에서 다음 내용을 설정

# For java

export JAVA_HOME=/usr/local/java

export PATH=$JAVA_HOME/bin:.:$PATH

 

5. 공유메모리 및 세마포 설정

오라클사가 제공한 커널 파라미터 값에 대한 권고값

파라미터

권장값

설명

SEMMNI

100

시스템 내 세마포어 셋의 최대 개수, 동시에 사용될 수 있는 세마포어의 최대 개수를 결정한다.

SEMMNS

256

시스템 내 세마포어 전체 개수

SEMMSL

100

한 개의 세마포어 셋에 존재할 수 있는 세마포어의 최대개수.

오라클 프로세스의 최대개수에 10개정도를 더한 값으로 설정한다. (오라클 initSID.ora 파일 내의 processes 파라미터)

SEMOPM

100

시스템 내 semop를 호출할 때마다 operation의 최대 개수

SEMVMX

32767

세마포어의 최대값을 결정한다.

SHMMAX

2147483648

한 개의 공유 메모리 세그먼트의 최대 크기 (단위: 바이트)

SHMMIN

1

한 개의 공유 메모리 세그먼트의 최소 크기 (단위: 바이트)

SHMMNI

100

공유 메모리 세그먼트의 최대 개수

SHMSEG

4096

한 개의 프로세스에 연결될 수 있는 공유 메모리 세그먼트의 최대값

** 공유 메모리와 세마포어의 개수 알아보기**

원래 공유메모리와 세마포어를 변경한 값을 적용하여 커널을 재컴파일 해야하지만

여건이 되지 않는 경우 소프트웨어적으로 공유메모리와 세마포어를 변경할 수 있다.

[root@ora9 kernel]# vi /etc/sysctl.conf

가장 마지막에 다음을 추가합니다.

kernel.shmmax = 2147483648

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range=1024 65000

시스템 리소스를 제한하는 설정파일에 다음을 추가한다.

[root@ora9 kernel]# vi /etc/security/limits.conf

가장 마지막에 다음을 추가합니다.

oracle soft nofile 65536

oracle hard nofile 65536

oracle soft nproc 16384

oracle hard nproc 16384

이 후 재부팅을 권장합니다.

 

6. 오라클 사용자 초기화 파일구성

oracle$ vi .bash_profile

 

# for ORACLE

 

export ORACLE_BASE=/home/oracle
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export ORACLE_OWNER=oracle

export ORACLE_SID=ORA92
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601
export TNS_ADMIN=$ORACLE_HOME/network/admin

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 LD_ASSUME_KERNEL=2.4.1

export THREADS_FLAG=native

export TEMPDIR=/tmp

export EDITOR=vi
export PATH=$PATH:$ORACLE_HOME/bin
umask 022

 

# for DBA/User

 

alias oh='cd $ORACLE_HOME'

alias ob='cd $ORACLE_BASE'

alias cls='clear'

alias ls=’ls -F’

alias rm=’rm –i’

umask 022

 

# for java

 

export JAVA_HOME="/usr/jdk"

CLASSPATH=".:$JAVA_HOME/lib/tools.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/jdbc/lib/classes12.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME jdbc/lib/nls_charset12.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/rdbms/jlib/xsu12.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/lib/xmlparserv2.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/lib/classgen.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/lib/oraclexsql.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/lib/xmlplsql.jar"

CLASSPATH="$CLASSPATH:$ORACLE_HOME/lib/xschema.jar"

export CLASSPATH

 

오라클 환경 설정 항목과 그에 대한 설명

설정 이름

설정 설명

ORACLE_BASE

오라클 설치 프로그램인 OUI를 저장하고 오라클 트레이스 파일 및 데이터 파일을 저장하는 디렉토리의 이름을 기록하는 오라클 환경변수 명이다.

ORACLE_HOME

현재 설치하고자 하는 오라클 데이터베이스 서버를 저장할 디렉토리명을 기록한다.

ORACLE_OWNER

오라클 제품을 컨트롤할 OS 시스템 레벨의 유저가 누구인가를 설정하는 오라클 환경변수로, 앞 단락에서 생성한 oracle 사용자를 지정한다.

LD_LIBRARY_PATH

오라클 제품을 사용할 때 사용되는 오라클 공유 라이브러리들의 경로를 나타낸다. 반드시 $ORACLE_HOME/lib를 포함하여 설정한다./

ORACLE_SID

오라클 서버 인스턴스의 이름인 Oracle System Identifier(SID)를 설정한다. 하나의 하드웨어에 여러 개의 데이터베이스 인스턴스가 존재할 수 있지만, SID는 개별 인스턴스에 대해 유일한 이름으로 명명되어야 한다.

PATH

$ORACLE_HOME/bin을 포함하여 설정한다.

NLS_LANG

오라클 데이터베이스의 문자 셋을 설정한다. 여러분이 생성하게 될 데이터베이스의 문자셋과 일치해야 한다.

TNS_ADMIN

Oracle Network를 구성할 때 필요한 설정파일의 위치를 지정하는 것으로, insterner.ora, tnsnames.ora, sqlnet.ora 파일들이 위치하고 있다.

ORA_NLS33

NLS_LANG 항목에 설정된 문자 셋대로 오라클 데이터베이스에서 각국의 언어 및 도량형을 제공하는 데 필요한 정보를 갖고 있는 파일들의 위치를 지정한다.

TEMPDIR

오라클 데이터베이스가 운영 중에 임시 파일들을 위치시킬 장소를 지정한다.

EDITOR

SQL *Plus 상에서 edit명령어를 사용했을 때 실행할 수 있는 OS 레벨의 에디터를 지칭하는 것으로, 여러분에게 익숙할 만한 pico, vi를 설정한다.

LANG

데이터베이스의 문자 셋을 결정하는 NLS_LANG과 달리, 현재 사용자의 세션에서의 문자 셋을 결정하는 시스템 환경변수이다. 필자와 같이 ko_KR.eucKR를 설정하면 한글화된 시스템 메시지를 볼 수 있으며, 오라클에서 제공하는 모든 자바 툴에서 한글화 메시지를 바로 볼 수 있다.

DISPLAY

Oracle Universal Installer 등 오라클에서 제공하는 자바로 만들어진 여러 가지 툴이 구동하기 위한 X윈도우 환경을 설정하기 위한 것으로, 사용자의 서버 명이나 IP를 설정한다.

LD_ASSUME_KERNEL

KERNEL 버전을 다른것으로 보이게 하기 위한 환경 변수다.

THREADS_FLAG

JAVA Thread 실행과 관련이 있는 값이다.

 

7. 오라클 셋업

x-windows oracle계정으로 로그인

oracle에서 ./runinstaller

언어가 깨지거나 실행이 안될 경우에는 다음명령을 실행

unset LANG

Unix Group Name-> oinstall 또는 dba

sid-> 일반적으로 ora9 혹은 ora92

Global Database Name -> ora9.도메인

문자셋은 [6] 사용자 초기화파일에서 설정한 것과 같아야 한다.

export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601

설치 중간에 orainstRoot.sh 팝업이 나올시

새창에서

su root

cd /tmp

./orainstRoot.sh실행

완료 후 진행

설치 진행 100% 후에

*/oracle/ora92/root.sh 실행 대화상자 팝업

$su root

#cd / oracle/ora92

#./root.sh

시스템 기본 디렉토리를 물으면

/usr/bin으로 설정

 

 

8. Database 시작과 종료

                    glibc 관련 rpm 패키지 원상복구하기

[root@ora9 /]# cd /usr/local/src/

[root@ora9 src]# rpm -Uvh --nodeps glibc-common-2.3.2-11.9.i386.rpm

[root@ora9 src]# rpm -Uvh --nodeps glibc-devel-2.3.2-11.9.i386.rpm

[root@ora9 src]# rpm -Uvh --nodeps glibc-2.3.2-11.9.i386.rpm

 

                    오라클 데이터베이스 시작하기

Database 의 시작과 종료는 반드시!! Oracle 계정으로 수행해야 합니다.

[root@ora9 src]# su oracle

[oracle@ora9 src]$ sqlplus /nolog

SQL> connect / as sysdba

SQL> startup

오라클 데이터베이스를 시작하고 종료하기 위해서는 OS에서의 인증과 암호 파일을 생성하는

툴인 orapwd를 통해야 한다. 그리고 sys 스키마의 권한인 sysdba 권한과 public 스키마

권한인 sysoper 권한의 특별한 시스템 권한을 소유한 사용자이어야 한다.

· sysdba : 데이터베이스 시작/종료, 아카이브 및 복구 작업, ALTER DATABASE OPEN,

MOUNT, BACKUP, CHANGE, CHARACHER SET 절의 명령어 실행

· sysoper : 데이터베이스 시작/종료, 아카이브 및 복구 작업, ALTER DATABASE OPEN,

MOUNT, BACKUP 절의 명령어 실행

SQL> SELECT * FROM v$version;

현재의 오라클 데이터베이스 인스턴스의 버전 확인하기

 

                    오라클 데이터베이스 종료하기

[oracle@ora9 src]$ sqlplus /nolog

SQL> connect / as sysdba

SQL> shutdown immediate

SQL> exit

 

                    oratab 파일 편집하기

오라클 데이터베이스를 /etc/rc.d/ini.d에 스크립트로 설정하여 자동으로 실행하게 하여봅시다.

[root@ora9 src]# vi /etc/oratab

다음 부분을 수정 ([SID], [ORACLE_HOME], [자동실행/종료 플래그]로 구성되어 있습니다.)

ora9:/opt/oracle/product/9.2.0.1.0:N è ora9:/opt/oracle/product/9.2.0.1.0:Y

 

                    Parameter 파일 링크

xxxxxxxxxxxx은 일정치 않은 숫자 입니다.

[root @ora9 /]# cp /opt/oracle/admin/ora9/pfile/initora9.ora.xxxxxxxxxxxx \

/opt/oracle/product/9.2.0.1.0/dbs/initora9.ora

 

                    s/etc/rc.d/init.d 에 등록하기

oracle9i 스크립트를 /etc/rc.d/init.d 에 복사합니다.

[root@ora9 src]# cp /usr/local/src/oracle-9.2.0.1.0 /etc/rc.d/init.d/oracle9i

oracle9i에 실행권한을 부여합니다.

[root@ora9 src]# chmod 755 /etc/rc.d/init.d/oracle9i

시스템에 oarcle9i 데몬을 등록한다.

[root@ora9 src]# chkconfig --add oracle9i

[root@ora9 src]# chkconfig --level 2345 oracle9i on

Oracle Database를 재시작 시켜본 후, LISTENER 데몬이 띄워져 잇는지 확인합니다.

[root@ora9 src]# /etc/rc.d/init.d/oracle9i start

[root@ora9 src]# ps ax | grep LISTENER

 

 

설치 로그보기

tail f $ORA_HOME/app/oracle/product/orainventory/logs/installactions.log

 

Oracle 삭제

$ORACLE_HOME 디렉토리에 있는 설치파일들 전부삭제

/etc 밑에 orainst.loc, oratab 삭제

/usr/local/bin/oraenv 파일 삭제

/tmp 디렉토리에서 관련파일 삭제

# rm /etc/oratab /etc/emtab

이후 다시 재설치 하시면 됩니다.

 

출처가 어디인지는 잊어버렸습니다...

원작자분께 죄송하단 말씀을..^^;;

 

기존 내용에 제가 이해하기 쉽도록 내용을 추가하였습니다.

 

그리고 초보가 한번에 따라하기는 어렵습니다.

나름대로의 시행착오를 겪어보셔야 될 것입니다.

^^ 잘되시길 바랍니다.

Posted by 1010