Oracle 19c RAC 설치(2) - RAC1 리눅스 환경 설정
RAC1 리눅스 환경 설정
Linux 설치 정보 확인
[root@rac1 ~]# uname -a
Linux rac1 4.14.35-1818.3.3.el7uek.x86_64 #2 SMP Mon Sep 24 14:45:01 PDT 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@rac1 ~]# cat /etc/os-release
NAME="Oracle Linux Server"
VERSION="7.6"
ID="ol"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="7.6"
PRETTY_NAME="Oracle Linux Server 7.6"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:7:6:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"
ORACLE_BUGZILLA_PRODUCT="Oracle Linux 7"
ORACLE_BUGZILLA_PRODUCT_VERSION=7.6
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=7.6
불필요한 서비스 정리
### 방화벽 중지
systemctl stop firewalld
systemctl disable firewalld
### 블루투스 중지
systemctl stop bluetooth
systemctl disable bluetooth
### 시간 동기화 중지
systemctl stop chronyd
systemctl disable chronyd
mv /etc/chrony.conf /etc/chrony.conf.bak
### NTP 중지
systemctl stop ntpdate
systemctl disable ntpdate
### AVAHI 중지
systemctl stop avahi-daemon.socket
systemctl disable avahi-daemon.socket
systemctl stop avahi-daemon
systemctl disable avahi-daemon
### 가상 시스템 관리 중지
systemctl stop libvirtd
systemctl disable libvirtd
보안 설정
vi /etc/selinux/config 로 selinux 모드 변경
SELINUX=disabled
hosts 파일 수정
/etc/hosts 설정
[root@rac1 ~]# cat /etc/host
cat: /etc/host: 그런 파일이나 디렉터리가 없습니다
[root@rac1 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
### Public
10.0.2.15 rac1 rac1
10.0.2.16 rac2 rac2
### Private
192.168.56.101 rac1-priv rac1-priv
192.168.56.102 rac2-priv rac2-priv
### Virtual
10.0.2.150 rac1-vip rac1-vip
10.0.2.160 rac2-vip rac2-vip
### SCAN
10.0.2.20 rac-scan rac-scan
10.0.2.21 rac-scan rac-scan
10.0.2.22 rac-scan rac-scan
dnsmasq 활성화
vi /etc/dnsmasq.conf 로 dnsmasq에 로컬 도메인 정보 추가
별도의 DNS 서비스 없이 SCAN 사용하기 위해 활성화한다.
[root@rac1 ~]# vi /etc/dnsmasq.conf
local=/localdomain/
resolv.conf 내용 확인 및 dnsmasq 활성화
cat /etc/resolv.conf
systemctl start dnsmasq
systemctl enable dnsmasq
nslookup rac-scan.localdomain # 경우에 따라 재기동 필요
[root@rac1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 127.0.0.1
[root@rac1 ~]# systemctl start dnsmasq
[root@rac1 ~]# systemctl enable dnsmasq
Created symlink from /etc/systemd/system/multi-user.target.wants/dnsmasq.service to /usr/lib/systemd/system/dnsmasq.service.
[root@rac1 ~]# nslookup rac-scan
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: rac-scan
Address: 10.0.2.21
Name: rac-scan
Address: 10.0.2.20
Name: rac-scan
Address: 10.0.2.22
[root@rac1 ~]# nslookup rac-scan
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: rac-scan
Address: 10.0.2.20
Name: rac-scan
Address: 10.0.2.22
Name: rac-scan
Address: 10.0.2.21
[root@rac1 ~]# nslookup rac-scan
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: rac-scan
Address: 10.0.2.22
Name: rac-scan
Address: 10.0.2.21
Name: rac-scan
Address: 10.0.2.20
필수 패키지 설치
패키지를 설치하기 위해 리눅스 실행중 ISO 파일을 삽입하고 CD를 실행한다.
해당 경로로 들어간다.
[root@rac1 ~]# cd /run/media/root/OL-7.6\ Server.x86_64/Packages/
다음 패키지 설치
rpm -Uvh ksh-*.x86_64.rpm
rpm -Uvh libaio-devel-*.x86_64.rpm
rpm -Uvh oracleasm-support-*.x86_64.rpm
rpm -Uvh kmod-oracleasm-*.x86_64.rpm
리눅스 필수 패키지 확인
설치가 안되어있으면 yum install -y [패키지명] 설치
참조) Oracle linux 7.6에서 yum 사용하기
2023.01.30 - [DB ORACLE 공부 기록] - Oracle Linux 7.6에서 yum repository 설정 (YUM 사용하기)
rpm -q bc
rpm -q binutils
rpm -q compat-libcap1
rpm -q compat-libstdc++-33
rpm -q elfutils-libelf
rpm -q elfutils-libelf-devel
rpm -q fontconfig-devel
rpm -q glibc
rpm -q glibc-devel
rpm -q kmod-20
rpm -q kmod-libs-20
rpm -q ksh
rpm -q libaio
rpm -q libaio-devel
rpm -q libgcc
rpm -q libstdc++
rpm -q libstdc++-devel
rpm -q libX11
rpm -q libXau
rpm -q libxcb
rpm -q libXi
rpm -q libXtst
rpm -q libXrender
rpm -q libXrender-devel
rpm -q make
rpm -q net-tools
rpm -q nfs-utils
rpm -q policycoreutils
rpm -q policycoreutils-python
rpm -q smartmontools
rpm -q sysstat
패키지가 모두 설치되었으면 디스크 삽입을 제거한다.
Temp 파일시스템 할당
추가 후 저장
[root@rac1 ~]# vi /etc/fstab
tmpfs /dev/shm tmpfs size=4g 0 0
/dev/shm 영역 remount
[root@rac1 ~]# mount -o remount /dev/shm
[root@rac1 ~]# df -h | grep shm
tmpfs 4.0G 0 4.0G 0% /dev/shm
오라클 추가 패키지 설치
preinstall 패키지가 설치되면 oracle 유저 및 oinstall, dba, oper, backupdba, dgdba, kmdba, racdba 그룹이 생성된다.
oracleasmlib 파일은 아래에서 다운
https://www.oracle.com/linux/downloads/linux-asmlib-rhel7-downloads.html
[root@rac1 ~]# yum install -y oracle-database-preinstall-18c.x86_64
[root@rac1 ~]# rpm -Uvh oracleasmlib-2.0.12-1.el7.x86_64.rpm
사용자 그룹 설정 변경
[root@rac1 ~]# usermod -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba oracle
oracle 계정 암호 변경
[root@rac1 ~]# passwd oracle
oracle 사용자의 비밀 번호 변경 중
새 암호: oracle
잘못된 암호: 암호는 8 개의 문자 보다 짧습니다
새 암호 재입력: oracle
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
설치 경로 생성
[root@rac1 ~]# mkdir -p /u01/app/oracle
[root@rac1 ~]# chown -R oracle:oinstall /u01
[root@rac1 ~]# chmod -R 775 /u01
사용자 환경 설정
oracle 계정 .bash_profile 수정
[root@rac1 ~]# vi ~oracle/.bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vi
export ORACLE_HOSTNAME=rac1
export ORACLE_UNQNAME=racdb
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/19c/grid
export DB_HOME=$ORACLE_BASE/product/19c/db_1
export ORACLE_HOME=$DB_HOME
export ORACLE_SID=racdb1 # node2 racdb2
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
PS1='[$ORACLE_SID:$PWD]> '
.bashrc로 alias 설정
[root@rac1 ~]# vi ~oracle/.bashrc
alias grid_env='export ORACLE_HOME=$GRID_HOME;export ORACLE_SID=+ASM1;export ORACLE_HOME=$GRID_HOME;export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_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:$GRID_HOME/bin:$BASE_PATH'
root 계정 .bash_profile 수정
[root@rac1 ~]# vi ~/.bash_profile
export ORACLE_BASE=/u01/app/oracle
export GRID_HOME=/u01/app/19c/grid
export DB_HOME=$ORACLE_BASE/product/19c/db_1
export PATH=$PATH:$GRID_HOME/bin
참조
https://dataforum.io/display/ORCL/Oracle+Database+19c+Real+Application+Cluster
https://positivemh.tistory.com/522