Oracle Database 11g R2 Installation Guide for RHEL5(x86) Writer : 이경호
목차 1. 시스템구성... - 2-1.1. 개요... - 2-1.1.1. 정의... - 2-1.1.2. 목적... - 2-1.1.3. 환경... - 2-2. 준비사항... - 2-3. Oracle Install configuration... - 3-4. Xshell 에서 Xmanager 이용 GUI 사용하기... - 8-5. Oracle 11g (11.2.0.1.0) Database S/W Install... - 9-6. Oracle 11g (11.2.0.2.0) PatchSet Install... - 20-7. Oracle Net Configuration... - 29-8. Oracle 11g Database Configuration... - 41-9. 참고자료... - 52 - - 1 -
1. 시스템구성 1.1. 개요 1.1.1. 정의 - VMware 7 을이용하여 Oracle Database 11g R2 를설치합니다. 1.1.2. 목적 - 실습을위한 Oracle Database 11g R2 설치가이드를작성합니다. 1.1.3. 환경 - Windows OS : Windows 7 Ultimate K (x64) - Linux OS : Enterprise-R5-i386 (x86) - 가상머신종류 : VMware 7 - 프로세스 : Intel Core i5 CPU M 460 @ 2.53 GHz - 메모리 : 4G 2. 준비사항 Program Version Usage VMware 7.1.3 가상머신설치프로그램 RHEL5 OS 2.6.18-128 사용 OS Xmanager 4 OUI, Shell, FTP 지원 Oracle Database 11.2.0.1.0 데이터베이스설치파일 Oracle PatchSet 11.2.0.4.0, 11.2.0.5.0 오라클패치셋파일 - 2 -
3. Oracle Install configuration [ 설명 ] dba 그룹생성및 oracle 유저생성합니다. [root@gz ~]# groupadd -g 5000 dba [root@gz ~]# useradd -g dba -d /home/oracle oracle [root@gz ~]# passwd oracle Changing password for user oracle. New UNIX password: BAD PASSWORD: it is based on a dictionary word Retype new UNIX password: passwd: all authentication tokens updated successfully. [ 설명 ] 오라클설치에필요한필수 RPM 패키지를체크합니다. [root@gz ~]# rpm -q ksh make gcc gcc-c++ sysstat binutils glibc glibc-common glibc-devel glibc-headers compat-db compat-libstdc++-33 libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel unixodbc unixodbc-devel numactl-devel control-center elfutils-libelf ksh-20100202-1.el5_5.1 make-3.81-3.el5 gcc-4.1.2-50.el5 gcc-c++-4.1.2-50.el5 package sysstat is not installed binutils-2.17.50.0.6-14.el5 glibc-2.5-58 glibc-common-2.5-58 glibc-devel-2.5-58 glibc-headers-2.5-58 package compat-db is not installed compat-libstdc++-33-3.2.3-61 libaio-0.3.106-5 package libaio-devel is not installed libgcc-4.1.2-50.el5 libgomp-4.4.4-13.el5 libstdc++-4.1.2-50.el5-3 -
libstdc++-devel-4.1.2-50.el5 package unixodbc is not installed package unixodbc-devel is not installed package numactl-devel is not installed control-center-2.16.0-16.el5 elfutils-libelf-0.137-3.el5 [ 설명 ] 설치가필요한 RPM 패키지를설치합니다. [root@gz Server]# rpm -Uvh sysstat-7.0.2-3.el5_5.1.i386.rpm warning: sysstat-7.0.2-3.el5_5.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:sysstat ########################################### [100%] [root@gz Server]# rpm -Uvh libaio-devel-0.3.106-5.i386.rpm warning: libaio-devel-0.3.106-5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:libaio-devel ########################################### [100%] [root@gz Server]# rpm -Uvh unixodbc-2.2.11-7.1.i386.rpm warning: unixodbc-2.2.11-7.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:unixODBC ########################################### [100%] [root@gz Server]# rpm -Uvh unixodbc-devel-2.2.11-7.1.i386.rpm warning: unixodbc-devel-2.2.11-7.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:unixODBC-devel ########################################### [100%] [root@gz Server]# rpm -Uvh numactl-devel-0.9.8-11.0.1.el5.i386.rpm warning: numactl-devel-0.9.8-11.0.1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:numactl-devel ########################################### [100%] - 4 -
[ 설명 ] /etc/sysctl.conf 파일에커널매개변수를추가후적용합니다. [root@gz ~]# vi /etc/sysctl.conf # Controls the maximum shared segment size, in bytes #kernel.shmmax = 4294967295 # Controls the maximum number of shared memory segents, in pages #kerne.shmall = 268435456 기존의 kernel.shmmax = 4294967295, kernel.shmall = 268436456 주석처리합니다. # Oracle 11g kernel.shmall= 2097152 kernel.shmmax=2147483648 kernel.shmmni=4096 kernel.sem=250 32000 100 128 fs.file-max=6553600 net.ipv4.ip_local_port_range=1024 65000 net.core.rmem_default=4194304 net.core.rmem_max=4194304 net.core.wmem_default= 262144 net.core.wmem_max= 262144 [ 설명 ] /etc/sysctl.conf 설정을바로적용합니다. [root@gz ~]# /sbin/sysctl -p [ 설명 ] /etc/security/limits.conf 시스템에서사용하는리소스를제한설정합니다. [root@gz ~]# vi /etc/security/limits.conf # Oracle 11g oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 [ 설명 ] /etc/pam.d/login 설정합니다. [root@gz ~]# vi /etc/pam.d/login # Oracle 11g session required /lib/security/pam_limits.so session required pam_limits.so - 5 -
[ 설명 ] /home/oracle 하위에설치파일을옮길 pkg 디렉토리를생성합니다. [root@gz ~]# mkdir -p /home/oracle/pkg [root@gz ~]# cd /home/oracle/pkg [ 설명 ] 설치파일을 Xftp 를이용하여 pkg 디렉토리에복사합니다. [root@gz pkg]# ls linux_11gr2_database_1of2.zip linux_11gr2_database_2of2.zip patchset [ 설명 ] 압축파일압축해제합니다. [root@gz pkg]# unzip linux_11gr2_database_1of2.zip && unzip linux_11gr2_database_2of2.zip [root@gz pkg]# ls database linux_11gr2_database_1of2.zip linux_11gr2_database_2of2.zip patchset [ 설명 ] /home/oracle/.bash_profile 에환경설정추가합니다. [root@gz pkg]# vi /home/oracle/.bash_profile #PATH=$PATH:$HOME/bin #export PATH 기존의 PATH, export 는지우거나위처럼 # 으로주석처리합니다. # Oracle 11g - 6 -
export ORACLE_BASE=/home/oracle export ORACLE_HOME=$ORACLE_BASE/product/11g export ORACLE_SID=testdb export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export ORACLE_TERM=xterm export LD_LIBRARY_PATH=$ORACLE_HOME/lib export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib export CLASSPATH=$ORACLE_HOME/JRE export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib export TEMP=/tmp export TMPDIR=/tmp [ 설명 ] /home/oracle 디렉토리소유권을바꾸고실행권한을부여합니다. [root@gz pkg]# chown -R oracle.dba /home/oracle [root@gz pkg]# chmod -R 755 /home/oracle [ 설명 ] 여기까지완료되면재부팅후 oracle 계정으로로그인합니다. [root@gz pkg]# reboot Broadcast message from root (pts/1) (Mon Mar 21 14:56:30 2011): The system is going down for reboot NOW! - 7 -
4. Xshell 에서 Xmanager 이용 GUI 사용하기 [ 설명 ] Xmanager 실행합니다. [ 설명 ] 실행 > cmd 입력후확인클릭합니다. [ 설명 ] cmd > ipconfig 입력합니다. [ 설명 ] Xshell 터미널창에서 export DISPLAY= 본인 IPv4 주소 :0.0 입력합니다. [oracle@gz ~]$ export DISPLAY=175.120.32.182:0.0-8 -
5. Oracle 11g (11.2.0.1.0) Database S/W Install [ 설명 ] 설치파일디렉토리로이동설치파일실행합니다. [oracle@gz ~]$ cd /home/oracle/pkg/database/ [oracle@gz database]$./runinstaller [ 설명 ] 오라클지원이메일아이디있으시면입력하시고없으시면 Next 클릭합니다. [ 설명 ] 지원메일을입력하지않으면경고창이뜨게됩니다. Yes 클릭합니다. - 9 -
[ 설명 ] Install database software only 선택후 Next 클릭합니다. [ 설명 ] Single Instance databse installation 선택후 Next 클릭합니다. - 10 -
[ 설명 ] 한글사용을위해 Korean 추가선택후 Next 클릭합니다. [ 설명 ] Enterprise Edition 선택후 Next 클릭합니다. - 11 -
[ 설명 ].bash_profile 에서지정된경로입니다. 확인후 Next 클릭합니다. [ 설명 ] /home 디렉토리에오라클베이스가있다는경고입니다. Yes 클릭합니다. - 12 -
[ 설명 ] 인벤토리경로지정, dba 그룹선택후 Next 클릭합니다. [ 설명 ] 중앙인벤토리는오라클베이스에있다는경고입니다. Yes 클릭합니다. - 13 -
[ 설명 ] 관리자그룹과운영자그룹을 dba 선택후 Next 클릭합니다. [ 설명 ] 설정파일과패키지검사를진행하는화면입니다. - 14 -
[ 설명 ] Fix & Check Againg 클릭합니다. [ 설명 ] 메모리와 swap 크기부족으로인한경고입니다. Ignore ALL ( 모두무시 ) 체크후 runfixup.sh 스크립트수행후 Next 클릭합니다. [root@gz ~]# /tmp/cvu_11.2.0.1.0_oracle/runfixup.sh Response file being used is :/tmp/cvu_11.2.0.1.0_oracle/fixup.response Enable file being used is :/tmp/cvu_11.2.0.1.0_oracle/fixup.enable Log file location: /tmp/cvu_11.2.0.1.0_oracle/orarun.log Setting Kernel Parameters... fs.file-max=6553600 fs.file-max = 6815744 net.ipv4.ip_local_port_range = 9000 65500 net.core.wmem_max= 262144 net.core.wmem_max = 1048576 fs.aio-max-nr = 1048576-15 -
[ 설명 ] Ignore All 선택후 Next 클릭합니다. - 16 -
[ 설명 ] 오라클베이스를 /home 아래에사용하지않는것이좋다는경고입니다. Yes 클릭합니다. [ 설명 ] /Next 클릭합니다. - 17 -
[ 설명 ] 설정완료확인후 Finish 클릭합니다. [ 설명 ] 스크립트 1 번 2 번차례로수행후 OK 클릭합니다. - 18 -
[root@gz ~]# /home/oracle/orainventory/orainstroot.sh Changing permissions of /home/oracle/orainventory. Adding read,write permissions for group. Removing read,write,execute permissions for world. Changing groupname of /home/oracle/orainventory to dba. The execution of the script is complete. [root@gz ~]# /home/oracle/product/11g/root.sh Running Oracle 11g root.sh script... The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /home/oracle/product/11g Enter the full pathname of the local bin directory: [/usr/local/bin]: Enter 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. - 19 -
[ 설명 ] Close 클릭합니다. 6. Oracle 11g (11.2.0.2.0) PatchSet Install [ 설명 ] 받아놓은 patchset 디렉토리로이동합니다. [oracle@gz ~]$ cd /home/oracle/pkg/patchset/ [oracle@gz patchset]$ ls p10098816_112020_linux_1of7.zip p10098816_112020_linux_6of7.zip p10098816_112020_linux_2of7.zip p10098816_112020_linux_7of7.zip p10098816_112020_linux_3of7.zip p10098816_112020_linux_4of7.zip p10098816_112020_linux_5of7.zip [ 설명 ] 압축해제합니다. [oracle@gz patchset]$ unzip p10098816_112020_linux_1of7.zip && unzip p10098816_112020_linux_2of7.zip && unzip p10098816_112020_linux_3of7.zip && unzip p10098816_112020_linux_4of7.zip && unzip p10098816_112020_linux_5of7.zip && unzip p10098816_112020_linux_6of7.zip && unzip p10098816_112020_linux_7of7.zip - 20 -
[oracle@gz patchset]$ rm -rf p10098816_112020_linux_* [oracle@gz patchset]$ ls client examples database gateways deinstall grid [ 설명 ] 설치파일디렉토리로이동실행합니다. [oracle@gz patchset]$ cd database/ [oracle@gz database]$./runinstaller [ 설명 ] 오라클지원이메일아이디있으시면입력하시고없으시면 Next 클릭합니다. [ 설명 ] Yes 클릭합니다. - 21 -
[ 설명 ] Skip software updates 선택후 Next 클릭합니다. [ 설명 ] install database software only 선택후 Next 클릭합니다. - 22 -
[ 설명 ] Single instance database installatinon 선택후 Next 클릭합니다. [ 설명 ] 한글사용을위해 Korean 추가선택후 Next 클릭합니다. - 23 -
[ 설명 ] Enterprise Edition 선택후 Next 클릭합니다. [ 설명 ] 11g 부터는 Patchset 설치할경우기존에있는홈디렉토리와는다른경로로 홈디렉토리생성을해서설치를해야합니다. Next 클릭합니다. - 24 -
[ 설명 ] 오라클베이스를 /home 아래에사용하지않는것이좋다는경고입니다. Yes 클릭합니다. [ 설명 ] OSOPER 그룹을 dba 로입력후 Next 클릭합니다. - 25 -
[ 설명 ] 설정파일및패키지검사중화면입니다. [ 설명 ] Ignore All 선택후 Next 클릭합니다. - 26 -
[ 설명 ] 설치설정확인후 Install 클릭합니다. [ 설명 ] 설치중화면입니다. - 27 -
[ 설명 ] 스크립트 1 번수행후 OK 클릭합니다. [root@gz ~]# /home/oracle/product/11g_2/root.sh Running Oracle 11g root script... The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /home/oracle/product/11g_2 Enter the full pathname of the local bin directory: [/usr/local/bin]: Enter The contents of "dbhome" have not changed. No need to overwrite. The file "oraenv" already exists in /usr/local/bin. Overwrite it? (y/n) [n]: y Copying oraenv to /usr/local/bin... The file "coraenv" already exists in /usr/local/bin. Overwrite it? (y/n) [n]: y Copying coraenv to /usr/local/bin... - 28 -
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 script. Now product-specific root actions will be performed. Finished product-specific root actions. [ 설명 ] Close 클릭합니다. [ 설명 ].bash_profile 에 ORACLE HOME 경로를수정합니다. [oracle@gz ~]$ vi.bash_profile export ORACLE_HOME=$ORACLE_BASE/product/11g ( 기존 ) export ORACLE_HOME=$ORACLE_BASE/product/11g_2 ( 수정 ) [oracle@gz ~]$ source.bash_profile [oracle@gz ~]$ sqlplus -v SQL*Plus: Release 11.2.0.2.0 Production 7. Oracle Net Configuration [ 설명 ] netca 명령어로오라클넷서비스구성시작합니다. - 29 -
[oracle@gz ~]$ netca [ 설명 ] Listener configuration 선택후 Next 클릭합니다. [ 설명 ] Add 선택후 Next 클릭합니다. - 30 -
[ 설명 ] 리스너이름은 LISTENER 입력후 Next 클릭합니다. [ 설명 ] TCP 선택후 Next 클릭합니다. - 31 -
[ 설명 ] 1521 port 선택후 Next 클리합니다. [ 설명 ] No 선택후 Next 클릭합니다. - 32 -
[ 설명 ] Next 클릭합니다. [ 설명 ] Local Net Service Name configuration 선택후 Next 클릭합니다. - 33 -
[ 설명 ] Add 선택후 Next 클릭합니다. [ 설명 ] 서비스이름은 testdb 입력후 Next 클릭합니다. - 34 -
[ 설명 ] TCP 선택후 Next 클릭합니다. [ 설명 ] 호스트이름은터미널창에 hostname 명령어입력해서나오는호스트이름을 입력하신후 Next 클릭합니다. - 35 -
[ 설명 ] Yes 선택후 Next 클릭합니다. [ 설명 ] Change Login 클릭합니다. - 36 -
[ 설명 ] OK 클릭합니다. [ 설명 ] Next 클릭합니다. - 37 -
[ 설명 ] 서비스이름은 testdb 입력후 Next 클릭합니다. [ 설명 ] No 선택후 Next 클릭합니다. - 38 -
[ 설명 ] Next 클릭합니다. [ 설명 ] Finish 클릭합니다. - 39 -
[ 설명 ] 리스너구성시터미널창에아래와같이입력됩니다. Oracle Net Services Configuration: Configuring Listener:LISTENER Listener configuration complete. Oracle Net Listener Startup: Running Listener Control: /home/oracle/product/11g_2/bin/lsnrctl start LISTENER Listener Control complete. Listener started successfully. Default local naming configuration complete. Created net service name: testdb Oracle Net Services configuration successful. The exit code is 0 [ 설명 ] 리스너상태확인및시작합니다. [oracle@gz ~]$ lsnrctl status LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 26-MAR-2011 12:55:04 Copyright (c) 1991, 2010, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Gz)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.2.0 - Production Start Date 26-MAR-2011 12:27:08 Uptime 0 days 0 hr. 27 min. 56 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /home/oracle/product/11g_2/network/admin/listener.ora Listener Log File /home/oracle/diag/tnslsnr/gz/listener/alert/log.xml Listening Endpoints Summary... - 40 -
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Gz)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) The listener supports no services The command completed successfully [oracle@gz ~]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 26-MAR-2011 12:55:09 Copyright (c) 1991, 2010, Oracle. All rights reserved. TNS-01106: Listener using listener name LISTENER has already been started 8. Oracle 11g Database Configuration [ 설명 ] dbca 입력합니다. [oracle@gz ~]$ dbca [ 설명 ] Next 클릭합니다. - 41 -
[ 설명 ] Create a Database 선택후 Next 클릭합니다. [ 설명 ] General ( 범용 ) 선택후 Next 클릭합니다. - 42 -
[ 설명 ].bash_profile 에 SID 부분으로설정된이름 testdb 입력후 Next 클릭합니다. [ 설명 ] Enterprise Manager 사용설정후 Next 클릭합니다. - 43 -
[ 설명 ] 암호를일괄적으로설정후 Next 클릭합니다. [ 설명 ] Yes 클릭합니다. - 44 -
[ 설명 ] Use Database File locations from Template 선택후 Next 클릭합니다. [ 설명 ] Specify Fast Recovery Area 선택후 Next 클릭합니다. - 45 -
[ 설명 ] Sample Schemas 선택후 Next 클릭합니다. [ 설명 ] Character Sets 에서 KO16MSWIN949 선택후 Next 클릭합니다. - 46 -
[ 설명 ] 설정한정보확인후 Next 클릭합니다. [ 설명 ] Create Database 체크후 Finish 클릭합니다. - 47 -
[ 설명 ] 다시한번설정내역확인후 OK 클릭합니다. [ 설명 ] 데이터베이스생성중화면입니다. - 48 -
[ 설명 ] Password Management 클릭합니다. [ 설명 ] SCOTT 계정, HR 계정을잠금해제하고암호를입력후 OK 클릭합니다. - 49 -
[ 설명 ] Yes 클릭합니다. [ 설명 ] Exit 클릭합니다. - 50 -
[ 설명 ] sysdba 계정으로로그인, SGA 메모리공간및현재인스턴스확인합니다. [oracle@gz ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.2.0 Production on Sat Mar 26 13:56:41 2011 Copyright (c) 1982, 2010, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> show sga; Total System Global Area 422670336 bytes Fixed Size 1344616 bytes Variable Size 264244120 bytes Database Buffers 150994944 bytes Redo Buffers 6086656 bytes SQL> select status from v$instance; STATUS ------------ OPEN - 51 -
9. 참고자료 참고자료서진수강사님 아이티윌오라클전문가과정 17기 Google 검색 - 52 -