버전 비교

  • 이 줄이 추가되었습니다.
  • 이 줄이 삭제되었습니다.
  • 서식이 변경되었습니다.

Image Modified

실습을 위해 VirtualBox에서 구축된 환경에서는 편의를 위해 VBOXADDITIONS를 VBOXADDITIONS (이하 Guest Addition)를 설치해야 합니다.

root 유저에서 진행을 해야 하므로 기타... 버튼을 클릭합니다.

Image Modified

사용자 이름에 "root"를 입력하고 <로그인>을 클릭합니다.

Image Modified

암호에 root 사용자의 암호를 입력하고 <로그인>을 클릭합니다.

Image Modified

경고 메시지가 나오면 "이 메시지를 다시 보지 않습니다"를 체크하고 <닫기> 버튼을 클릭합니다.

Image Added

root 계정으로 접속한 GUI 모드의 리눅스 바탕화면입니다.

Image Added

VirtualBox에서 Guest Addition CD를 mount 시키면 화면과 같은 자동시작 확인 메시지가 나옵니다.

설치가 필요하므로 <확인> 버튼을 클릭합니다.

Image Modified

 자동으로 설치가 진행되며, 최종 설치 완료 후에는 엔터키를 입력합니다.

Image Modified

 

펼치기

터미널 창을 열려면 바탕 화면을 마우스 오른쪽 버튼으로 클릭하고 드롭다운 메뉴에서 "Open in Terminal"을 선택하면 됩니다.

Image Added

설치가 완료된 뒤에는 터미널 창을 열어 eject 명령어로 mount된 CD를 제거해주면 됩니다.

Image Removed

 

코드 블럭
languagebash
linenumberstrue
cat /etc/oracle-release
cat /etc/redhat-release
lsb_release -id
uname -r
펼치기
서식 미적용
[root@rac1root@oel6 ~]# cat /etc/oracle-release
Oracle Linux Server release 6.89

[root@rac1root@oel6 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.89 (Santiago)

[root@rac1root@oel6 ~]# lsb_release -id
Distributor ID:	OracleServer
Description:	Oracle Linux Server release 6.89

[root@rac1root@oel6 ~]# uname -r
4.1.12-3761.41.128.el6uek.x86_64

설치된 리눅스의 버전 정보를 확인합니다.

설치된 버전에 따라 출력되는 메시지는 다를 수 있습니다. 

코드 블럭
languagebash
titleroot 유저로 수행
linenumberstrue
rpm -q binutils-*
rpm -q compat-libcap1-*
rpm -q compat-libstdc++-33-*
rpm -q gcc-*
rpm -q gcc-c++-*
rpm -q glibc-*
rpm -q glibc-devel-*
rpm -q ksh
rpm -q libgcc-*
rpm -q libstdc++-*
rpm -q libstdc++-devel-*
rpm -q libaio-*
rpm -q libaio-devel-*
rpm -q libXext-*
rpm -q libXtst-*
rpm -q libX11-*
rpm -q libXau-*
rpm -q libxcb-*
rpm -q libXi-*
rpm -q make-*
rpm -q sysstat-*
펼치기
서식 미적용
[root@rac1root@oel6 ~]# rpm -q binutils-*
binutils-2.20.51.0.2-5.4446.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q compat-libcap1-*
compat-libcap1-1.10-1.x86_64


[root@rac1root@oel6 ~]# rpm -q compat-libstdc++-33-*
compat-libstdc++-33-3.2.3-69.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q gcc-*
gcc-4.4.7-1718.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q gcc-c++-*
gcc-c++-4.4.7-1718.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q glibc-*
glibc-2.12-1.209.1920.1.el6.x86_64
glibc-2.12-1.192209.0.1.el6.i686


[root@rac1root@oel6 ~]# rpm -q glibc-devel-*
glibc-devel-2.12-1.192209.0.1.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q ksh
ksh-20120801-33.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libgcc-*
libgcc-4.4.7-1718.el6.x86_64
libgcc-4.4.7-1718.el6.i686


[root@rac1root@oel6 ~]# rpm -q libstdc++-*
libstdc++-4.4.7-1718.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libstdc++-devel-*
libstdc++-devel-4.4.7-1718.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libaio-*
libaio-0.3.107-10.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libaio-devel-*
libaio-devel-0.3.107-10.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libXext-*
libXext-1.3.3-1.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libXtst-*
libXtst-1.2.23-2.1.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libX11-*
libX11-1.6.4-3-2.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libXau-*
libXau-1.0.6-4.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libxcb-*
libxcb-1.1112-24.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q libXi-*
libXi-1.7.48-1.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q make-*
make-3.81-23.el6.x86_64


[root@rac1root@oel6 ~]# rpm -q sysstat-*
sysstat-9.0.4-3133.el6.x86_64

 오라클 소프트웨어 설치를 위해 필요한 OS 패키지가 모두 설치되었는지 확인합니다.

코드 블럭
languagebash
titlevi /etc/hosts
linenumberstrue
###<IP> Public<호스트명>
펼치기
서식 미적용
10.0.1.101
ora12cr1
  oel6

/etc/hosts 파일에 서버 정보를 추가합니다.

오라클 소프트웨어 설치를 정상적으로 진행하기 위해 정확한 정보를 입력해야 합니다. 

코드 블럭
languagebash
titlevi /etc/fstab
tmpfs /dev/shm tmpfs size=4g 0 0
코드 블럭
languagebash
titleroot 유저로 수행
mount -o remount /dev/shm
펼치기

기존 값을 #로 주석 처리

서식 미적용
#tmpfs                   /dev/shm                tmpfs   defaults        0 0
tmpfs                   /dev/shm                tmpfs   size=4g        0 0
서식 미적용
[root@oel6 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        45G  8.1G   34G  20% /
tmpfs           2.5G   76K  2.5G   1% /dev/shm
[root@oel6 ~]# mount -o remount /dev/shm
 
[root@oel6 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        45G  8.1G   34G  20% /
tmpfs           4.0G   72K  4.0G   1% /dev/shm

 

오라클의 MEMORY_TARGET 파라미터를 사용하기 위해 설정위해서 tmpfs를 변경해야 합니다.

기존에 설정된 tmpfs 값은 #로 주석 처리하거나 삭제합니다.

remount하여 바로 적용시킵니다.

코드 블럭
languagebash
titlevi /etc/sysctl.conf
linenumberstrue
kernel.sem    = 250   32000   100   128
kernel.shmmni = 4096
fs.file-max   = 6815744
net.ipv4.ip_local_port_range = 9000   65535
net.core.rmem_default = 262144
net.core.rmem_max     = 4194304
net.core.wmem_default = 262144
net.core.wmem_max     = 1048576
fs.aio-max-nr         = 1048576 

커널 변수를 수정하는 작업입니다.

oracle-rdbms-server-12cR1-preinstall 패키지가 설치되었다면 이미 반영된 내용이므로 넘어가도 됩니다.

하지만 해당 패키지를 따로 설치하지 않은 상태에서 오라클 소프트웨어를 설치하려면 왼쪽의 내용을 /etc/sysctl.conf에 추가해야 합니다. 

코드 블럭
languagebash
titlevi /etc/security/limits.conf
linenumberstrue
oracle  hard  nofile   65536
oracle  hard  nproc    16384
oracle  soft  nproc    2047
oracle  hard  memlock  4572857
grid    hard  nofile   65536
grid    soft  nproc    2047

리소스 제한을 위한 사용자별 설정값을 입력합니다.

오라클을 설치하는 OS 계정에 맞게 oracle 또는 grid 유저별로 제한값을 입력합니다. 

코드 블럭
languagebash
titleroot 유저로 수행
linenumberstrue
chkconfig --level 123456 xinetd off
chkconfig --level 123456 cups off
chkconfig --level 123456 smartd off
chkconfig --level 123456 iptables off
chkconfig --level 123456 ip6tables off
chkconfig --level 123456 bluetooth off
펼치기
서식 미적용
[root@oel6 ~]# chkconfig --level 123456 xinetd off
[root@oel6 ~]# chkconfig --level 123456 cups off
[root@oel6 ~]# chkconfig --level 123456 smartd off
[root@oel6 ~]# chkconfig --level 123456 iptables off
[root@oel6 ~]# chkconfig --level 123456 ip6tables off
[root@oel6 ~]# chkconfig --level 123456 bluetooth off

추가적인 리소스 확보를 위해 기본적으로 실행중인 불필요한 OS 프로그램을 off 시킵니다. 

코드 블럭
languagebash
titleroot 유저로 수행
linenumberstrue
# groupadd oinstall
# groupadd dba
groupadd oper
groupadd backupdba
groupadd dgdba
groupadd kmdba
groupadd asmdba
groupadd asmoper
groupadd asmadmin
 
usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmadmin,asmdba,vboxsf oracle
useradd -g oinstall -G dba,asmdba,asmoper,asmadmin,vboxsf grid
 
id oracle
id grid
 
passwd oracle
passwd grid
펼치기
서식 미적용
[root@rac1root@oel6 ~]# groupadd oper
[root@rac1root@oel6 ~]# groupadd backupdba
[root@rac1root@oel6 ~]# groupadd dgdba
[root@rac1root@oel6 ~]# groupadd kmdba
[root@rac1root@oel6 ~]# groupadd asmdba
[root@rac1root@oel6 ~]# groupadd asmoper
[root@rac1root@oel6 ~]# groupadd asmadmin

[root@rac1root@oel6 ~]# usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmadmin,asmdba,vboxsf oracle

[root@rac1root@oel6 ~]# useradd -g oinstall -G dba,asmdba,asmoper,asmadmin,vboxsf grid

[root@rac1 
[root@oel6 ~]# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),493(vboxsf),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54327(asmdba),54329(asmadmin)

[root@oel6 ~]# id grid
uid=54322(grid) gid=54321(oinstall) groups=54321(oinstall),54322(dba),493(vboxsf),54327(asmdba),54328(asmoper),54329(asmadmin)

[root@oel6 ~]# passwd oracle
oracle 사용자의 비밀 번호 변경 중
새  암호:
잘못된 암호: 사전에 있는 단어를 기반으로 합니다  
잘못된 암호: 너무 간단함
새  암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
 
[root@rac1root@oel6 ~]# passwd grid
grid 사용자의 비밀 번호 변경 중
새  암호:
잘못된 암호: 사전에 있는 단어를 기반으로 합니다  
잘못된 암호: 너무 간단함
새  암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.

설치를 진행할 사용자 계정과 그룹을 생성 또는 추가합니다.

oracle-rdbms-server-12cR1-preinstall 패키지가 설치되었다면 oracle 유저와 oinstall, dba 그룹은 이미 생성되어 있습니다.

vboxsf 그룹은 VirtualBox의 Guest Addition을 사용하기 위한 그룹으로, 실제 운영 환경에서 Guest Addition을 사용하지 않는다면 추가하지 않습니다.

passwd 명령어로 각 계정의 암호를 지정해주면 됩니다.

 

코드 블럭
languagebash
titleroot 유저로 수행
linenumberstrue
mkdir -p /u01/app/oracle/product
chown -R grid:oinstall /u01
chmod -R 770 /u01
펼치기
서식 미적용
[root@oel6 ~]# mkdir -p /u01/app/oracle/product
[root@oel6 ~]# chown -R grid:oinstall /u01
[root@oel6 ~]# chmod -R 770 /u01

 오라클 소프트웨어 설치를 위한 경로를 생성하고, 해당 경로에 대한 권한과 소유권을 수정합니다.

코드 블럭
languagebash
titlegrid 유저 : vi .bash_profile
linenumberstrue
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=$ORACLE_BASE/12.1.0/grid
export DB_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_HOME=$GRID_HOME
export ORACLE_SID=+ASM
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_KOREA.AL32UTF8
export PS1='[\u@$ORACLE_SID \W]$ '

grid 계정으로 접속한 후에 .bash_profile을 수정합니다.

root계정에서 grid 유저로 접속하려면 아래와 같이 su 명령을 입력하면 됩니다

코드 블럭
languagebash
su - grid

수정이 완료되고 root 유저로 돌아오려면 exit 명령을 grid 유저에서 실행하면 됩니다.

코드 블럭
languagebash
exit
 
코드 블럭
languagebash
titleoracle 유저 : vi .bash_profile
linenumberstrue
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_UNQNAME=racdb
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=$ORACLE_BASE/12.1.0/grid
export DB_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_HOME=$DB_HOME
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG=AMERICAN_KOREA.AL32UTF8
export PS1='[\u@$ORACLE_SID \W]$ '

마찬가지로 oracle 계정으로 접속하여 .bash_profile을 수정합니다.

oracle 유저로 변경하려면 아래와 같이 su 명령을 입력하면 됩니다

코드 블럭
languagebash
su - oracle