RedHat Enterprise Linux 4 -
Oracle 10g + patchset10.2.0.4
+ database create +
patchset10.2.0.5
[silent mode]
1.사용자 계정과 그룹을 생성합니다.
2.오라클 변수 설정을 합니다.
export LD_ASSUME_KERNEL=2.4.19
export ORACLE_BASE=/home/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10g
export ORACLE_SID=testdb
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.KO16MSWIN949
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export PATH=$PATH:$ORACLE_HOME/bin
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
4. 커널 공유 메모리를 수정합니다.
vi /etc/sysctl.conf
kernel.shmmax=536870912
kernel.shmmni=4096
kernel.shmall=2097152
kernel.sem=250 32000 100 128
fs.file-max=65536
net.ipv4.ip_local_port_range=1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
적용을 위해 sysctl -p
5. 사용자 인증을 보호하기 위해 login파일을 수정합니다.
vi /etc/pam.d/login
[root@dbserver oracle]# rpm -Uvh compat-libcwait-2.1-1.i386.rpm
[root@dbserver RPMS]# rpm -Uvh libaio-devel-0.3.105-2.i386.rpm (리눅스4 3번cd)
[root@dbserver oracle]# rpm -Uvh compat-oracle-rhel4-1.0-5.i386.rpm
8. /home/oracle 디렉토리의 모든 파일의 권한을 oracle계정에게 주고
oraInventory 그룹 및 위치를 적용할 loc파일을 생성합니다.
# chown -R oracle.dba /home/oracle
# vi /etc/oraInst.loc
inventory_loc=/home/oracle/oraInventory
9. oraInst.loc파일의 소유권도 oracle계정으로 지정한다.
그리고 enterprise.rsp파일도 편집합니다. oui로 설치시 입력해 주는 항목을 미리 지정해줄 수 있습니다.
#chown oracle.dba /etc/oraInst.loc
#vi /home/oracle/database/respomse/enterprise.rsp
FROM_LOCATION="/home/oracle/database/stage/products.xml" 43번줄
ORACLE_HOME="/home/oracle/product/10g" 62번줄
ORACLE_HOME_NAME="OraHome" 72번줄
n_configurationOption=3 422번줄
10. 오라클 설치에 들어갑니다.
$ export DISPLAY=:0.0 -> 원격 접속 클라이언트에서 아래 명령어 입력(putty 등으로 로그인)
$ cd /home/oracle/database/
$ export LANG="ko_KR.euc_KR" -> putty 화면에서 유니코드 CP949 로 설정시 설치과정을 한글화하여 볼때 설정합니다.
$ ./runInstaller -silent -force -waitforcompletion -responseFile /home/oracle/database/response/enterprise.rsp
11. 설치가 완료되면 root 계정으로 스크립트를 날려달라고 온다.
12. 설치가 잘 되었나 확인해보자. 성공
-----------------------------------------------------------------------------------------------------------------------
patchset10.2.0.4
1. 오라클 4.0패치셋을 찾아서 압축을 푸세요.
2. 똑같이 #vi /home/oracle/database/respomse/enterprise.rsp를 수정해줘야 합니다.
만약 소스나,종속 문제, 등이 나오면 root 계정으로 oracle을 kill해주고 다시 설치하면 됩니다.
UNIX_GROUP_NAME="dba" 35번줄
FROM_LOCATION="/home/oracle/database/stage/products.xml" 43번줄
ORACLE_HOME="/home/oracle/product/10g" 62번줄
ORACLE_HOME_NAME="OraHome" 72번줄
해주고 저장 종료 해주면 된다.
3. 리스폰 파일을 실행해서 설치하면 됩니다.
# export DISPLAY=:0.0
# /runInstaller -silent -force -waitforcompletion -responseFile /home/oracle/patchset/Disk1/response/patchset.rsp
# /home/oracle/product/10g/root.sh
그리고 root계정으로 스크립트를 실행하라고 나옵니다.
---------------------------------------------------------------------------------------------------------------------------------
database create
1. dbca.rsp를 수정합니다.
dbca로 db 생성시 입력해 주는 항목을 미리 지정하고 패치할 수 있도록 합니다.
vi /home/oracle/database/respomse/dbca.rsp
SID = "testdb" 88번줄
CHARACTERSET = "KO16MSWIN949" 355번줄
NATIONALCHARACTERSET= "UTF8" 365번줄
2.리스폰 파일 수정을 했으면 바로 패치셋 리스폰파일 실행해주면 된다.
#export DISPLAY=:0.0
DBCA XWINDOW 실행화면
3.위와같이 정상적으로 설치가 완료되면 제대로 생성되었는지 확인해봐야 하니
SQLPLUS /AS SYSDBA로 접속해보자.
------------------------------------------------------------------------------------------------------------
patchset10.2.0.5
1. 전의 0.4패치셋 디렉토리(Disk1)를 삭제하고
0.5패치셋 디렉토리(Disk1)을 찾아서 압축을 푼다.
# vi /home/oracle/patchset/
2.리스폰 파일을 열어서 0.4패치셋과 같이 해주면 된다.
단 하나가 추가된다.
FROM_LOCATION="/home/oracle/patchset/Disk1/stage/products.xml"
ORACLE_HOME="/home/oracle/product/10g"
ORACLE_HOME_NAME="OraHome"
DECLINE_SECURITY_UPDATES=true
3. 설정 완료되면 리스폰 파일을 실행하는데
실행하기전에 한가지 해둬야할게 있다.
# pkill -9 oracle
해주고
# /home/oracle/patchset/Disk1/
Disk1 ]# export DISPLAY=:0.0
Disk1 ]# ./runInstaller -silent -force -waitforcompletion -responseFile /home/oracle/patchset/Disk1/response/patchset.rsp
아래는 에러없이 정산적으로 나온 설치과정
root계정으로 /home/oracle/product/10g/root.sh
를 실행하라는 스크립트를 볼 수 있다.
root 계정으로 스크립트를 실행시키면
[/usr/local/bin] -> 엔터
나머지부터 overwrite 하겠냐고 물어부면 무조건 y
그리고 나서
sqlplus / as sysdba
로 접속하면 정산적으로 0.5 패치셋이 올라온걸 볼 수 있다.
* 추가적으로 *
1 .sqlplus / as sysdba
2. conn / as sysdba
3. shutdown abort
4.startup upgrade
5.select status from v$instance;
--1--
status -> open = 끝
--2--
status -> open migrate = 패치셋 맞춰줘야 함
*post upgrade*
1) SQL> @?/rdbms/admin/catupgrd.sql
2) shutdown
3) startup
4) SQL> @?/rdbms/admin/utlrp.sql
5) sqlplus / as sysdba
6) SQL> select status from v$instance;
고생하셨습니당