메뉴 건너뛰기

조회 수 10914 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

CentOS 6.5 에 Oracle Database 11g Release 2 설치하기

설치환경


CentOS 6.4 64bit (X-Window)

Java 1.6 (SUN)

Oracle 11gR2

설치전 작업


X-Window 설치


Oracle 설치시에는 X-Window 환경에서 설치를 진행하여 합니다. 만약 X-Windows 설치가 되어있지 않을 경우에는 아래의 명령을 이용하여 X-Window 설치하시면 됩니다.


Shell


yum -y groupinstall "X Window System"

의존 라이브러리 설치


아래의 명령을 이용하여 오라클 설치시 필요한 의존 라이브러를 설치합니다.


Shell


yum -y install compat-libstdc++-33.x86_64 binutils elfutils-libelf elfutils-libelf-devel

yum -y install glibc glibc-common glibc-devel glibc-headers gcc gcc-c++ libaio-devel 

yum -y install libaio libgcc libstdc++ libstdc++ make sysstat unixODBC unixODBC-devel 

yum -y install unzip

pdksh 설치파일은 yum 으로 설치가 되지 않아 직접 rpm 파일을 다운로드 받아 설치합니다.


Shell


wget ftp://ftp.pbone.net/mirror/www.whiteboxlinux.org/whitebox/4/en/os/x86_64/WhiteBox/RPMS/pdksh-5.2.14-30.x86_64.rpm

rpm -Uvh --nodeps pdksh-5.2.14-30.x86_64.rpm

Kernel Parameter 설정


아래의 명령으로 Kernel Parameter 설정 파일을 편집합니다.


Shell


vi /etc/sysctl.conf

아래의 내용으로 수정합니다.


/etc/sysctl.conf


# Disable netfilter on bridges.

#net.bridge.bridge-nf-call-ip6tables = 0

#net.bridge.bridge-nf-call-iptables = 0

#net.bridge.bridge-nf-call-arptables = 0

 

kernel.shmall = 10523004

kernel.shmmax = 6465333657

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

 

fs.aio-max-nr = 1048576

fs.file-max = 6815744

 

net.ipv4.ip_local_port_range = 9000 65500

 

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

아래의 명령을 이용하여 변경된 Kernel Parameter 을 적용합니다.


Shell


1

/sbin/sysctl -p

정상적으로 적용시 아래와 같은 메시지가 나타납니다.



net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmall = 10523004

kernel.shmmax = 6465333657

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.aio-max-nr = 1048576

fs.file-max = 6815744

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

사용자 자원 제한 설정


아래의 명령으로 limits.conf 파일을 편집합니다.


Shell


vi /etc/security/limits.conf

아래의 내용을 추가합니다.


/etc/security/limits.conf


oracle  soft    nproc   2048

oracle  hard    nproc   65536

oracle  soft    nofile  1024

oracle  hard    nofile  65536

oracle  soft    stack   10240

사용자 인증 보안 설정


아래의 명령으로 해당 설정파일을 편집합니다.


Shell


vi /etc/pam.d/login

session    required     pam_namespace.so 다음 라인에 아래의 내용을 추가합니다.


/etc/pam.d/loginShell


session    required     pam_limits.so

SELINUX 설정 해제


아래의 명령으로 해당 설정파일을 편집합니다.


Shell


vi /etc/selinux/config

아래와 같이 SELINUX 설정을 disabled 로 설정합니다.


/etc/selinux/config


SELINUX=disabled

hostname 설정


아래의 명령을 실행하여 hostname 을 확인합니다.


Shell


hostname

아래와 같이 hostname 이 나타납니다.



localhost.localdomain

재부팅 없이 호스트명 변경


Shell


echo oracle > /proc/sys/kernel/hostname

영구적 호스트명 변경


Shell


vi /etc/sysconfig/network

아래와 같이 HOSTNAME 의 속성을 변경합니다.


/etc/sysconfig/networkShell


HOSTNAME=oracle

hosts 파일에 host 명을 추가 시켜줍니다.


Shell


vi /etc/hosts

아래와 같이 hostname 을 추가시킨후 저장합니다.


vi /etc/hosts


127.0.0.1   oracle

사용자 계정 생성


아래의 명령을 이용하여 사용자 그룹과 계정을 생성합니다.


Shell


groupadd oinstall

groupadd dba

useradd -g oinstall -G dba oracle

passwd oracle

아래의 명령을 이용하여 oracle 설치 디렉토리를 생성한 후 권한을 부여합니다.


Shell


mkdir -p /app/oracle

chown -R oracle:oinstall /app/oracle

chmod -R 775 /app/oracle

 

mkdir -p /app/oraInventory

chown -R oracle:oinstall /app/oraInventory

chmod -R 775 /app/oraInventory

 

mkdir -p /data/database/oracle

chown -R oracle:oinstall /data/database/oracle

chmod -R 775 /data/database/oracle

환경변수 설정


oracle 사용자의 환경 변수를 편집합니다.


Shell



vi /home/oracle/.bash_profile

아래의 내용을 입력합니다.


Shell



export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_BASE=/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_HOME_LISTNER=$ORACLE_HOME/bin/lsnrctl

export ORACLE_SID=ORCL

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

export PATH=$ORACLE_HOME/bin:$PATH

Oracle 설치


아래의 명령을 이용하여 오라클 사용자로 권한을 변경합니다.


Shell



su - oracle

설치파일 압축해제


Oracle 설치파일의 압축을 해제합니다.


Shell


unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

압축을 해제한 후 설치 디렉토리로 이동합니다.


Shell



cd database



Oracle Universal Installer 실행


아래의 명령을 이용하여 Oracle Universal Installer 를 실행합니다.


Shell



./runInstaller

정상적으로 오라클 인스톨러가 실행되면 아래와 같은 메시지가 출력된 후, 설치 화면이 나타납니다.




Starting Oracle Universal Installer...

 

Checking Temp space: must be greater than 120 MB.   Actual 41346 MB    Passed

Checking swap space: must be greater than 150 MB.   Actual 15983 MB    Passed

Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-07-01_03-44-44PM. Please wait ...

아래와 같은 설치 화면이 나타나면 (1) 번 항목의 체크를 해제한 후 [Next >] 버튼을 클릭합니다.



orainstall_1

이메일 주소를 입력하지 않을 경우 아래와 같이 Email Address Not Specified 팝업이 나타나면 계속 진행을 위해 [Yes] 버튼을 클릭합니다.

orainstall_2

Create and configure a database 항목을 선택한 후 [Next >] 버튼을 클릭합니다.

orainstall_3

Server Class 항목을 선택한 후 [Next >] 버튼을 클릭합니다.

orainstall_4

Single instance database installation 항목을 선택한 후 [Next >] 버튼을 클릭합니다.

orainstall_5

Advanced install 항목을 선택한 후 [Next >] 버튼을 클릭합니다.

orainstall_6

왼쪽의 Available Languages 선택 상자에서 Korean 을 선택한 후  [Next >] 버튼을 클릭합니다.

orainstall_7

Enterprise Edition (4.29GB) 항목을 선택한 후 [Next >] 버튼을 클릭합니다.

orainstall_8

Oracle 의 설치디렉토를 확인한후  [Next >] 버튼을 클릭합니다.

orainstall_9

oraInventory Group Name: 항목을 oinstall 로 선택한 후  [Next >] 버튼을 클릭합니다.

orainstall_10

General Purpose / Transaction Processing 항목을 선택한 후  [Next >] 버튼을 클릭합니다.

orainstall_11

Global database name 과 Oracle Service Identifier (SID) 항목을 각 환경에 맞게 입력한 후  [Next >] 버튼을 클릭합니다.

orainstall_12

Memory 탭의 설정을 확인합니다. Enable Automatic Memory Management 항목은 기본은 체크하도록 합니다.

orainstall_13

Character sets 탭 에서는 다국어 지원을 위하여 Use Unicode (AL32UTF8) 항목을 선택합니다.

orainstall_14

Security 탭의 설정을 확인합니다.

orainstall_15

Sample Schemas 탭에서는 Oracle 설치시 샘플 데이터베이스를 생성하고자 할 경우 Create database with sample schemas 항목에 체크를 합니다.

orainstall_16

[Next >] 버튼을 클릭합니다.

orainstall_17

기본 설치 데이터베이스에 대한 디렉토리를 지정합니다. 기본으로 설치하실 경우에는 [Next >] 버튼을 클릭합니다.

orainstall_18

[Next >] 버튼을 클릭합니다.

orainstall_19

오라클 계정의 패스워드를 설정하는 화면입니다. 관리 계정은 모두 동일한 패스워드를 사용하기 위하여 Use the same password for all accounts 항목을 선택한 후 패스워드를 입력합니다.

패스워드는 하나 이상의 영문 대소문자와 숫자를 포함한 8글자 이상으로 만들어주셔야 합니다. 해당 조건을 충족시키지 못할시 경고 메시지가 나타납니다.

orainstall_20

Database Administrator (OSDBA) Group 와 Database Operator (OSOPER) Group 의 usergroup 을 dba 로 설정한 후 [Next >] 버튼을 클릭합니다.

orainstall_21

Install 시 필요한 라이브러리를 확인하며, 버전이 맞지 않을 경우에도 나타날수 있습니다. 의존 라이브러리가 설치가 되어있다면, (1) 번 Ignore All 항목을 체크한 후 [Next >] 버튼을 클릭합니다.

orainstall_22

Oracle 을 설치 옵션에 대한 최종확인을 합니다. 각 옵션 항목을 확인한 후 [Finish] 버튼을 클릭합니다.

orainstall_23

설치가 시작되면 아래의 화면과 같이 진행 상태가 나타납니다.

orainstall_24

설치중에 Database 설치 팝업이 나타납니다.

orainstall_25

설치가 완료되면 아래와 같이 Database Configuration Assistant 팝업이 나타납니다. [Password Management] 버튼을 클릭합니다.

orainstall_26

샘플 데이터베이스의 SCOTT 사용자에 대한 Lock Account 항목의 체크를 해제한 후 [OK] 버튼을 클릭합니다.

orainstall_27

아래 화면과 같은 Execute Configuration Scripts 팝업창이 나타나며, 터미널 창을 띄어 (1) 항목에 있는 스크립트를 root 권한으로 실행합니다.

orainstall_28

아래의 명령으로 root 권한으로 변경합니다.



Shell


su - root

orainstRoot.sh 명령을 실행합니다.


Shell


/app/oraInventory/orainstRoot.sh

정상적으로 실행시 아래와 같은 메시지가 나타납니다.


Changing permissions of /app/oraInventory.

Adding read,write permissions for group.

Removing read,write,execute permissions for world.

 

Changing groupname of /app/oraInventory to oinstall.

The execution of the script is complete.

root.sh 명령을 실행합니다.


Shell


/app/oracle/product/11.2.0/db_1/root.sh

정상적으로 실행시 아래와 같은 메시지가 출력됩니다.




Running Oracle 11g root.sh script...

 

The following environment variables are set as:

    ORACLE_OWNER= oracle

    ORACLE_HOME=  /app/oracle/product/11.2.0/db_1

 

Enter the full pathname of the local bin directory: [/usr/local/bin]: 

   Copying dbhome to /usr/local/bin ...

   Copying oraenv to /usr/local/bin ...

   Copying coraenv to /usr/local/bin ...

 

Creating /etc/oratab file...

Entries will be added to the /etc/oratab file as needed by

Database Configuration Assistant when a database is created

Finished running generic part of root.sh script.

Now product-specific root actions will be performed.

Finished product-specific root actions.

스크립트를 모두 실행한 후, Execute Configuration Scripts 팝업창에서 [OK] 버튼을 클릭하면, 오라클의 모든 설치가 완료됩니다. [Close] 버튼을 클릭하여 설치화면을 종료합니다.



orainstall_29

설치 확인

Web Admin (EM)

브라우저의 주소창에 https://localhost:1158/em 을 접속하면, 아래와 같이 로그인창이 나타납니다. 각 항목에 로그인 정보를 입력한 후 [Login] 버튼을 클릭합니다.

  • User Name : SYS
  • Password : 설치시 설정한 패스워드를 입력합니다.
  • Connect As : SYSDBA

orainstall_30

로그인 성공시 아래와 같은 화면이 나타납니다.

orainstall_31

Console

오라클 사용자로 변경합니다.



Shell


su - oracle

아래의 설치 위치로 이동합니다.


Shell


cd $ORACLE_HOME/bin

아래와 같이 sqlplus 명령을 실행합니다.


Shell


./sqlplus / as sysdba

정상적으로 실행이 되면 아래와 같이 Oracle Console 메시지가 출력됩니다.


SQL*Plus: Release 11.2.0.1.0 Production on Mon Jul 1 17:28:12 2013

 

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

 

Connected to:

Oracle Database 11g Release 11.2.0.1.0 - 64bit Production

 

SQL>

또는 아래와 같이 실행이 가능합니다.


Shell


./sqlplus

Enter user-name: 프롬프트가 나타나면 “/ as sysdba” 를 입력하여 콘솔에 접근 가능합니다.


SQL*Plus: Release 11.2.0.1.0 Production on Mon Jul 1 17:29:23 2013

 

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

 

Enter user-name: / as sysdba

 

Connected to:

Oracle Database 11g Release 11.2.0.1.0 - 64bit Production

 

SQL>

아래의 명령을 이용하여 instance 를 확인합니다.


Transact-SQL


select instance_name from v$instance;

정상적으로 실행시 아래와 같이 SID 명이 출력됩니다.



INSTANCE_NAME

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

ORCL

아래의 명령을 이용하여 datafile 위치를 확인합니다.


Transact-SQL


select name from v$datafile;

정상적으로 실행시 아래와 같이 datafile 의 위치가 출력됩니다.


NAME

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

/app/oracle/oradata/ORCL/system01.dbf

/app/oracle/oradata/ORCL/sysaux01.dbf

/app/oracle/oradata/ORCL/undotbs01.dbf

/app/oracle/oradata/ORCL/users01.dbf

/app/oracle/oradata/ORCL/example01.dbf


Service 등록

root 권한으로 변경합니다.


Shell


su - root

아래의 파일을 편집합니다. oratab 파일은 Oracle 설치시 자동으로 생성되는 파일입니다.


Shell


vi /etc/oratab

아래와 같이 해당 SID 의 끝문자열 “N” 을 “Y” 로 변경한 후 저장합니다.


Shell


ORCL:/app/oracle/product/11.2.0/db_1:Y

oracle 사용자의 환경파일을 편집합니다.


Shell


vi /home/oracle/.bash_profile

아래와 같이 SID 변수가 설정이 되어있는지 확인한 후 설정된 값이 없다면 입력후 저장합니다.


Shell


export ORACLE_SID=ORCL

아래의 명령으로 시작 Shell Script 를 생성합니다.


Shell


vi /etc/init.d/oracle

아래와 같이 내용을 작성한 후 저장합니다.


Shell


#!/bin/bash

 

# oracle: Start/Stop Oracle Database 11g R2

#

# chkconfig: 345 90 10

# description: The Oracle Database is an Object-Relational Database Management System.

#

# processname: oracle

 

. /etc/rc.d/init.d/functions

 

LOCKFILE=/var/lock/subsys/oracle

ORACLE_HOME=/app/oracle/product/11.2.0/db_1

ORACLE_USER=oracle

 

case "$1" in

'start')

   if [ -f $LOCKFILE ]; then

      echo $0 already running.

      exit 1

   fi

   echo -n $"Starting Oracle Database:"

   su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"

   su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"

   su - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"

   touch $LOCKFILE

   ;;

'stop')

   if [ ! -f $LOCKFILE ]; then

      echo $0 already stopping.

      exit 1

   fi

   echo -n $"Stopping Oracle Database:"

   su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop"

   su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"

   su - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"

   rm -f $LOCKFILE

   ;;

'restart')

   $0 stop

   $0 start

   ;;

'status')

   if [ -f $LOCKFILE ]; then

      echo $0 started.

      else

      echo $0 stopped.

   fi

   ;;

*)

   echo "Usage: $0 [start|stop|status]"

   exit 1

esac

 

exit 0

아래의 명령으로 실행권한을 변경합니다.


Shell


chmod 755 /etc/init.d/oracle

서비스 등록 스크립트를 등록하여 줍니다.


Shell


chkconfig --add oracle

오라클 서비스 스크립트를 부팅시 자동으로 시작할 수 있도록 설정합니다.


Shell


chkconfig oracle on


Trouble Shooting

오라클 인스톨러 실행시 오류



Shell

Starting Oracle Universal Installer...
 
Checking Temp space: must be greater than 120 MB.   Actual 41736 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 15983 MB    Passed
Checking monitor: must be configured to display at least 256 colors
    >>> Could not execute auto check for display colors using command /usr/bin/xdpyinfo. Check if the DISPLAY variable is set.    Failed <<<<
 
Some requirement checks failed. You must fulfill these requirements before
 
continuing with the installation,
 
Continue? (y/n) [n] n
 
User Selected: No
 
Exiting Oracle Universal Installer, log for this session can be found at /tmp/OraInstall2013-07-01_02-55-06PM/installActions2013-07-01_02-55-06PM.log
root 계정으로 로그인 합니다.

Shell

su - root
아래의 명령을 실행합니다.

Shell

xhost +SI:localuser:oracle
정상적으로 실행시 아래와 같은 메시지가 나타납니다.


localuser:oracle being added to access control list
oracle 계정으로 변경하여 ./runInstaller 를 실행합니다.


List of Articles
번호 제목 날짜 조회 수
121 오라클 10, 16진수(Decimal, Hex) 변환 2018.10.27 4393
120 오라클 랜덤함수 2018.10.27 2219
119 오늘을 기준으로 해당주(week)의 모든 일자조회 2017.01.20 8399
118 오라클] 숫자 체크 방법 (IS_NUMBER, IS_NUMERIC) file 2017.01.20 8833
117 오라클 ORDER BY : 정렬 2017.01.20 8298
116 오라클 NULL : 값이 존재하지 않는 상태 2017.01.20 7269
» CentOS 6.5 에 Oracle Database 11g Release 2 설치하기 file 2016.12.08 10914
114 RMAN 을 이용한 오라클 백업 2016.12.08 8630
113 [Oracle] Rownum을 이용한 페이징 처리 2016.12.08 12296
112 [Oracle] 테이블 스페이스 및 사용자 계정 생성 방법 2016.12.08 8653
111 [Oracle] DB Export, Import 방법 2016.12.08 12677
110 오라클 백업 및 복구(Export, Import) file 2016.12.08 9832
109 오라클 DB 백업과 복원 2016.12.08 9988
108 데이터베이스 백업하기 ( import : 가져오기 , export : 내보내기 ) file 2016.12.08 9951
107 컬럼의 값 만큼 행(Row)을 늘리기 file 2016.12.08 14170
106 ROLLUP 합계, 소계 구하기 (GROUP BY) file 2016.12.08 11925
105 여러개(다중) LIKE 검색 방법 (REGEXP_LIKE 함수) file 2016.12.08 12895
104 숫자를 문자로 변환 시 소수점 처리 (TO_CHAR, FM) file 2016.12.08 15090
103 PL/SQL에서 자바(Java) 클래스(Class), 함수 실행 방법 file 2016.12.08 9448
102 숫자 체크 방법 (IS_NUMBER, IS_NUMERIC) file 2016.12.08 23239
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved