A) dnsmasq 활성화

vi /etc/dnsmasq.conf 로 dnsmasq에 로컬 도메인 정보 추가
local=/localdomain/
[root@node1 ~]# cat /etc/dnsmasq.conf | grep local=
local=/localdomain/


dnsmasq 서비스의 환경 설정 파일에 로컬 도메인에 대한 정보를 입력합니다.

resolv.conf 내용 확인 및 dnsmasq 활성화
cat /etc/resolv.conf
systemctl start dnsmasq
systemctl enable dnsmasq
nslookup cluster-scan.localdomain    # 경우에 따라 재기동 필요
[root@node1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 127.0.0.1

[root@node1 ~]# systemctl start dnsmasq

[root@node1 ~]# systemctl enable dnsmasq
Created symlink /etc/systemd/system/multi-user.target.wants/dnsmasq.service → /usr/lib/systemd/system/dnsmasq.service.

[root@node1 ~]# nslookup cluster-scan.localdomain
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   cluster-scan.localdomain
Address: 10.0.1.193
Name:   cluster-scan.localdomain
Address: 10.0.1.191
Name:   cluster-scan.localdomain
Address: 10.0.1.192

별도의 DNS 서비스 없이 SCAN을 사용하기 위해 dnsmasq 서비스를 활성화합니다.

DNS 설정 파일(resolv.conf)에는 "nameserver 127.0.0.1"가 입력되어 있어야 합니다.

B) oracle 제공 추가 패키지 설치

Oracle 사전환경 구성 패키지 및 ASMLib 패키지 설치
rpm -ivh oracle-database-preinstall-23ai-1.0-2.el9.x86_64.rpm
[root@node1 sf_oracle]# rpm -ivh oracle-database-preinstall-23ai-1.0-2.el9.x86_64.rpm
Verifying...                          ################################# [100%]
준비 중...                         ################################# [100%]
Updating / installing...
   1:oracle-database-preinstall-23ai-1################################# [100%]

추가로 Oracle Database 설치를 위한 preinstall 패키지와 ASMLib 패키지를 설치합니다.

preinstall 패키지는 Oracle Linux Repository에서 받을 수 있고, ASMLib 패키지는 별도의 경로에서 다운로드 합니다.

C) 그룹 및 사용자 계정 작업

root 유저로 그룹 생성 (ASM 설정시 옵션)
groupadd asmadmin
groupadd asmdba
groupadd asmoper
[root@node1 ~]# groupadd asmadmin

[root@node1 ~]# groupadd asmdba

[root@node1 ~]# groupadd asmoper

[root@node1 ~]# cat /etc/group | grep asm
asmadmin:x:54331:
asmdba:x:54332:
asmoper:x:54333:


소프트웨어를 설치할 사용자 계정과 그룹을 생성 또는 추가합니다.

preinstall 패키지가 설치되었다면 oracle 유저와 oinstall, dba, oper, backupdba, dgdba, kmdba, racdba 그룹은 이미 생성되어 있습니다.

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

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

root 유저로 수행
# useradd -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper oracle
usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper,vboxsf oracle
id oracle
passwd oracle
[root@node1 ~]# usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmadmin,asmdba,asmoper,vboxsf oracle

[root@node1 sf_oracle]# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),976(vboxsf),54322(dba),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54330(racdba),54331(asmadmin),54332(asmdba),54333(asmoper)

[root@node1 ~]# passwd oracle
oracle 사용자의 비밀 번호 변경 중
새 암호:
잘못된 암호: 암호는 8 개의 문자 보다 짧습니다
새 암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.


D) 설치 경로 생성

설치 경로 생성 및 권한 부여
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01
chmod -R 775 /u01
[root@node1 ~]# mkdir -p /u01/app/oracle/product

[root@node1 ~]# chown -R oracle:oinstall /u01

[root@node1 ~]# chmod -R 775 /u01

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

E) 사용자 환경 설정

vi ~oracle/.bash_profile 로 oracle 프로필 설정
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_HOSTNAME=node1             # 호스트명에 맞게 변경
export ORACLE_UNQNAME=racdb
export ORACLE_BASE=/u01/app/oracle
export GI_HOME=/u01/app/19c/gi
export DB_HOME=$ORACLE_BASE/product/19c/db_1
export ORACLE_HOME=$DB_HOME
export ORACLE_SID=racdb1                # 2번 노드 racdb2
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GI_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
PS1='[$ORACLE_SID:$PWD]> '

oracle 유저의 .bash_profile을 수정합니다.

root계정에서 해당 파일을 직접 수정할 수 있습니다.

vi ~oracle/.bashrc 로 alias 설정
alias gi_env='export ORACLE_HOME=$GI_HOME;export ORACLE_SID=+ASM1;export ORACLE_HOME=$GI_HOME;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GI_HOME/bin:$BASE_PATH'
alias db_env='export ORACLE_HOME=$DB_HOME;export ORACLE_SID=racdb1;export ORACLE_HOME=$DB_HOME;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GI_HOME/bin:$BASE_PATH'

Grid와 DB 인스턴스 간의 변환을 쉽게 하기 위해 alias를 설정합니다.

vi ~/.bash_profile 로 root 프로필 수정
export ORACLE_BASE=/u01/app/oracle
export GI_HOME=/u01/app/19c/gi
export DB_HOME=$ORACLE_BASE/product/19c/db_1
export PATH=$PATH:$GI_HOME/bin

작업의 편의를 위해 root 계정의 .bash_profile에도 경로 정보를 추가로 입력합니다.

  • 레이블 없음