SQL > ORACLE - Tip&Tech > CentOS 5.5 오라클11gR2 설치 성공
 
SQL
MYSQL
MS-SQL
ORACLE
 
 
ORACLE - Tip&Tech
  HOME > SQL > ORACLE - Tip&Tech
 
작성일 : 12-06-28 11:56
CentOS 5.5 오라클11gR2 설치 성공
 글쓴이 : 덩벙이 (211.♡.155.28)
조회 : 2,890   추천 : 0   비추천 : 0  
문서는
http://www.oracle.com/technology/pub/articles/smiley_rac10g_install.html
http://www.oracle-base.com/articles/10g/OracleAS10gInstallationOnFedora2.php
참조.

시스템 환경 점검
2.6.9-11 이상의 커널이 필요하다.
# uname -r

필요한 패키지 버전(그 이상도 당연히 가능) -> 대부분 설치되어 있다.
binutils-2.15.92.0.2-10
compat-db-4.1.25-9
control-center-2.8.0-12
gcc-3.4.3-9
gcc-c++-3.4.3-9
glibc-2.3.4-2
glibc-common-2.3.4-2
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-9
libstdc++-devel-3.4.3-9
make-3.80-5
pdksh-5.2.14-30
sysstat-5.0.5-1
xscreensaver-4.18-5

시스템 요구사항 검증
# grep MemTotal /proc/meminfo
MemTotal :    xxxxxx KB
# grep SwapTotal /proc/meminfo
SwamTotal : xxxxx KB

계정 생성
# groupadd oinstall
# groupadd dba
# useradd -m -g oinstall -G dba oracle
# passwd oracle


디렉토리 생성
# mkdir /oracle
# chown -R oracle.dba /oracle
# chmod -R 755 /oracle


hosts 파일
/etc/hosts 파일이 제대로 설정되어 있는지 확인.
# cat /etc/hosts
<IP-address> <fully-qualified-machine-name> <machine-name>

커널 파라미터 설정
 Oracle 11g? 가 요구하는 커널 매개변수 설정이다. 아래의 수치는 최소값이며 /etc/sysctl.conf에 적혀있는 값이
아래의 값보다 높을 경우에는 변경하지 않아도 된다. 물론 낮을 경우에는 /etc/sysctl.conf 에 추가해준다.

# sysctl -a | grep ... 으로 확인할 수 있다.

#kernel.shmall = 2097152
#kernel.shmmax = 2147483648
#kernel.shmmni = 142
# semaphores: semmsl, semmns, semopm, semmni
#kernel.sem = 250 32000 100 128
#fs.file-max = 131072
net.ipv4.ip_local_port_range = 1024 65000
kernel.msgmni = 2878
#kernel.msgmax = 8192
#kernel.msgmnb = 65535


(#처리는 서버에서 해당값보다 크거나 같은 경우이다. 적다면 주석 풀고 붙여넣는다.)

변경이 완료되면

# /sbin/sysctl -p 로 변경된 설정을 적용한다.


oracle 사용자 계정의 shell limit 설정
Linux 계정 별로 실행되는 프로세스와 열린 파일 수를 제한한다. 이를 위해 /etc/security/limits.conf 를 편집한다.
아래에 추가하자. (간격은 tab으로 조정하던지.. 알아서 )
#<domain>      <type>  <item>         <value>
    oracle            soft     nproc            2047
    oracle            hard    nproc            16384
    oracle            soft     nofile             1024 
    oracle            hard    nofile             65536

그리고 /etc/pam.d/login 에 다음을 추가하자.
session    required    /lib/security/pam_limits.so


oracle 계정을 위한 환경변수
DB 서버에서 설정해야하는 환경변수는 다음과 같다.

ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH

위의 변수를 추가하기 위해서 oracle 계정의 .bash_profile에 다음을 추가한다.

ORACLE_BASE=/oracle; export ORACLE_BASE
ORACLE_HOME=/oracle/11g; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin

오라클 배포판 다운받기
배포판을 다운받아서 특정 디렉토리에 압축을 풀어놓는다. 물론 디렉토리는 oracle 계정의 소유여야한다.
루트로 작업하고 나중에 chown을 사용해도 상관없다.

# unzip linux.x64_11gR1_database.zip    <물론 zip파일의 이름은 다를 수도 있다 -_->
# chown -R oracle.oinstall ./database

설치 전에..
oracle 계정으로 로그인 해서  설치 파일들을 풀어놓은 디렉토리에서 runInstaller를 실행하기 전에..
# xhost +
(+까지 쳐야한다. 이걸 해줘야 루트로 로그인 한 X윈도에서 터미널로 su - oracle을 이용해서
  oracle 계정을 사용 xwindow 창을 띄울 수 있다. 궁금하다면 man xhost 를 참고할 것)

예전에는 /etc/redhat-release를 수정해주곤 했는데 안해줘도 잘 나온다.

oracle 11g도 한글이 다 깨져서 나온다. runInstaller 전에 다음을 실행한다.
# export LANG=C
그리고 나서 runInstaller를 실행하면 깨지지 않고 나올 것이다. 물론 영어로 -_-;

이제 runInstaller를 실행해보자.

Base Location
Home Location 을 profile과 동일하게 맞춰주고..
Global Database Name 도 SID 와 맞춰준다.
Advanced Installation으로 들어가면 이것저것 만질 수 있는게 많다. 귀찮으므로 패스.

자.. 이제 다음 화면이다.

Inventory Directory와 Group Name을 지정하는데 Inventory는 적당한 곳에 위치시키고..
group name도 dba로 설정해준다.

이제는 설치전 요구사항에 대해서 검사를 하는데.

Warning도 뜨고.. not execute(Network 설정)도 뜬다. 그냥 User Verify 로 선택하고 넘어가자.

11g에서는 다음 화면이 추가로 생겼다. 환경설정 관리자 등록 화면인데.. 등록하면 뭔가 귀찮으니까 -_- 패스


자 이제 Summary 를 볼 수 있다.

Install 버튼을 눌러서 계속 진행한다.

와우. 별일 없이 쭉 넘어갔다. 8i 시절 부터 10g까지 리눅스에 설치시 끈질기게 괴롭히던 Link Error가 사라졌다.
다음은 패스워드 설정이다. 11g 에서는 sys / system / dbsnmp / sysman 을 제외한 모든 계정이 잠겨있다.
여기서 풀어줄 수 있다. scott 정도는 풀어주자.

scott 을 추가해준다.


항상 해오던 루트로 실행해줄 스크립트다. 터미널을 하나 열어서 적혀있는 스크립트를 루트권한으로 실행해준다.

설치가 완료 되었다.




오라클 자동 시작/종료 설정
# vi /etc/oratab
orcl:/oracle/11g:N   <- N을 Y로 수정한다.
orcl:/oracle/11g:Y



에러처리
다음과 같은 에러가 날 것이다.

error while loading shared libraries libnnz11.so: cannot restore segment prot after reloc Permission denied

뭔가 퍼미션이 없다는 얘긴데.. 이건 SELinux를 disable 시켜주면 된다. SELinux disble 시키는 방법은

/etc/selinux/config 파일을 잘 읽어보고 고치면 된다. (모르면 구글에 검색)

또 이런 에러가 날 수도 있다.

$ ./lsnrctl start
 
LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 18-FEB-2008 19:14:37
 
Copyright (c) 1991, 2007, Oracle.  All rights reserved.
 
Message 1070 not found; No message file for product=network, facility=TNSTNS-12545: Message 12545 not found; No message file for product=network, facility=TNS
 TNS-12560: Message 12560 not found; No message file for product=network, facility=TNS
  TNS-00515: Message 515 not found; No message file for product=network, facility=TNS
   Linux Error: 2: No such file or directory


이런 경우는 포트가 열려있지 않은 경우니까.. 방화벽에서 1521번 포트를 열어주자.

오라클 실행과 종료
oracle 계정에서
$ lsnrctl start   <리스너 스타트>

리스너 시작 후에..

$ sqlplus /nolog
sqlplus> connect orcl as sysdba
...
sqlplus> startup

서비스 스크립트 작성

# vi /etc/init.d/oracle 
다음의 내용을 파일에 쓴다.

----------------------------------------------------------------------
#!/bin/bash
ORA_HOME="/oracle/11g/"
ORA_OWNER="oracle"
 
if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]
then
        echo "Oracle Startup: failed"
        exit 1
fi
 
case "$1" in
start)
        echo -n "Oracle Start: "
        su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
        su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
        touch /var/lock/subsys/oracle
        echo "OK"
        ;;
stop)
        echo -n "ORACLE Shutdown: "
        su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
        su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
        rm -f /var/lock/subsys/oracle
        echo "OK"
        ;;
restart)
        $0 stop
        $0 start
        ;;
*)
        echo "Usage: $0 start|stop|restart"
        exit 1
esac
exit 0

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

사용은 /etc/rc.d/init.d/oracle start | stop | restart ~

그럼   

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


warning message 중에서..

[ /etc/sysctl.conf ]
...
#kernel.sem =250 32000 32 128
kernel.sem =250 32000 100 128

#net.core.rmem_default = 126976
#net.core.rmem_max = 131071
#net.core.wmem_default = 126976
#net.core.wmem_max = 131071

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

요거 적어주면 워닝 몇개 없어지더군요 ( 주석은 디폴트값 )
출처 : http://refill.egloos.com/4164613

 
 

Total 24
번호 제   목 글쓴이 날짜 추천 비추천 조회
24 작업내용 쿼리 저장 덩벙이 07-06 0 0 56
23 현재 오라클 서버에 접속한 사용자의 이름,테이블,뷰명 조회, 테… 덩벙이 07-06 0 0 78
22 오라클 삭제(Oracle 10g) 덩벙이 01-21 0 0 1637
21 CentOS 5.5 오라클11gR2 설치 성공 덩벙이 06-28 0 0 3081
20    CentOS 5.5 오라클11gR2 설치 성공 덩벙이 06-28 0 0 2891
19 리눅스 오라클 설치 덩벙이 06-28 0 0 2549
18 CentOS 6.2 리눅스에 오라클 Oracle 11g r2 설치: 2. 설치 프로… 덩벙이 06-28 0 0 8024
17 CentOS 6.2 리눅스에 오라클 Oracle 11g r2 설치: 1. 환경 설정 덩벙이 06-28 0 0 3619
16 Export와 Import 덩벙이 05-09 0 0 2726
15 특정 테이블을 제외(SKIP)하고 EXPORT 하는 방법 (1) 덩벙이 05-09 0 0 2528
14 오라클 scott 계정 활성화 하기 [http://all4museum.tistory.com… 덤벙이 04-19 0 0 3286
13 오라클에 접속하기 [http://all4museum.tistory.com/ 강좌] 덤벙이 04-19 0 0 3007
12 오라클 시작하고 중지하기 [ http://all4museum.tistory.com/ … 덤벙이 04-19 0 0 2357
11 오라클 DB 생성 후 설정 Listener.ora & Tnsnames.ora (윈도우) … 덤벙이 04-19 0 0 7045
10 오라클 DB 생성 [ http://all4museum.tistory.com/ 강좌] 덤벙이 04-19 0 0 2640
9 오라클10g (윈도우 환경) 설치 [ http://all4museum.tistory.co… 덤벙이 04-18 0 0 3642
8 간단 명료한 오라클 DB백업하기 덤벙이 04-18 0 0 3891
7 다른 oracle 버전으로 db 백업/복원하기 덤벙이 04-18 0 0 2350
6 Oracle - 백업/복구, Rollback (1) 덩벙이 04-12 0 0 2852
5    Oracle - 백업/복구, Rollback 덩벙이 04-12 0 0 3745
 1  2  
 
개인홈페이지 덤벙닷컴은 프로그래머와 디자이너위한 IT커뮤니티 공간입니다.
Copyright ⓒ www.dumbung.com. All rights reserved.