준비물
Oracle Linux7.9 설치 : https://peryh.tistory.com/66?category=871552
다운로드 설치 파일 : https://peryh.tistory.com/68?category=871557
설치 방법
1. OS 유저 생성(공통)
2. 디스크 추가 및 공유 디스크 설정(공통)
3. 라이브러리 설치(공통)
4. 미사용 서비스 및 hugepage, MTU 설정(공통)
5. 파라미터 및 유저 리소스 설정(공통)
6. 환경변수 설정, 권한 설정
7. 그리드 엔진 설치(1번기)
8. Diskgroup 생성(1번기)
9. 오라클 엔진 설치(1번기)
10. 오라클 DB 생성(1번기)
1. OS 유저 생성(공통)
두 개 이상의 Oracle 소프트웨어 제품이 서버에 설치된 경우 계획된 설치의 일부로 Oracle Inventory 그룹을 수동으로 생성합니다.
기본적으로 oraInventory 그룹이 없는 경우 설치 프로그램은 설치 중인 Oracle 소프트웨어에 대한 설치 소유자의 기본 그룹을 oraInventory 그룹으로 사용합니다. 이 그룹이 계획된 모든 Oracle 소프트웨어 설치 소유자에 대한 기본 그룹으로 사용 가능한지 확인하십시오.
파일이 없으면 oraInst.loc다음과 유사한 명령을 입력하여 Oracle Inventory 그룹을 생성합니다.
ASM용 OSDBA 그룹 생성
설치하는 동안 그룹 을 ASM용 OSDBA( asmdba) 그룹으로 지정해야 합니다. 이 그룹의 구성원에게는 Oracle Automatic Storage Management에 대한 액세스 권한이 부여됩니다.
ASM용 OSOPER 그룹 생성 설치 중에
그룹을 ASM용 OSOPER 그룹( )으로 지정하도록 선택할 수 있습니다 . asmoper이 그룹의 구성원에게는 Oracle Automatic Storage Management에 대한 시작 및 종료 권한이 부여됩니다.
데이터베이스 설치를 위한 OSDBA 그룹 생성
각 Oracle 데이터베이스에는 OSDBA 그룹으로 지정된 운영 체제 그룹이 필요합니다. 이 그룹의 구성원에게는 데이터베이스를 관리할 수 있는 SYSDBA 시스템 권한이 부여됩니다.
데이터베이스 설치를 위한 OSOPER 그룹
생성 제한된 데이터베이스 관리 권한(SYSOPER 운영자 권한)으로 운영 체제 사용자 그룹을 식별하려는 경우에만 OSOPER 그룹을 생성하십시오.
대부분의 설치에서는 OSDBA 그룹만 만드는 것으로 충분합니다. 단, OSOPER 그룹을 사용하기 위해서는 다음과 같은 상황에서 생성해야 합니다.
OSOPER 그룹이 존재하지 않는 경우, 예를 들어 시스템에 Oracle Database 소프트웨어를 처음 설치하는 경우
OSOPER 그룹이 존재하지만 새로운 Oracle 설치에서 다른 운영 체제 사용자 그룹에 데이터베이스 운영자 권한을 부여하려는 경우
데이터베이스 설치를 위한 OSBACKUPDBA 그룹 만들기 설치하는 동안 그룹을 OSBACKUPDBA 그룹으로 지정해야 합니다. 이 그룹의 구성원에게는 RMAN 또는 SQL*Plus를 사용하여 백업 및 복구 작업을 수행할 수 있는 SYSBACKUP 권한이 부여됩니다.
데이터베이스 설치를 위한 OSDGDBA 그룹 생성 설치하는 동안 그룹을 OSDGDBA 그룹으로 지정해야 합니다. 이 그룹의 구성원에게는 Data Guard 작업을 수행할 수 있는 SYSDG 권한이 부여됩니다.
데이터베이스 설치를 위한 OSKMDBA 그룹 만들기 설치하는 동안 그룹을 OSKMDBA 그룹으로 지정해야 합니다. 이 그룹의 구성원에게는 투명 데이터 암호화 키 저장소 작업을 수행할 수 있는 SYSKM 권한이 부여됩니다.
데이터베이스 설치를 위한 OSRACDBA 그룹 생성 데이터베이스를 설치하는 동안 그룹을 OSRACDBA 그룹으로 지정해야 합니다. 이 그룹의 구성원에게는 Oracle RAC 클러스터에서 Oracle 데이터베이스의 일상적인 관리를 수행할 수 있는 SYSRAC 권한이 부여됩니다.
#필요 시 선택하여 생성, 최소 사항으로 dba만 있어도 설치에 문제는 없음 /usr/sbin/groupadd -g 54321 oinstall /usr/sbin/groupadd -g 54327 asmdba /usr/sbin/groupadd -g 54328 asmoper /usr/sbin/groupadd -g 54322 dba /usr/sbin/groupadd -g 54323 oper /usr/sbin/groupadd -g 54324 backupdba /usr/sbin/groupadd -g 54325 dgdba /usr/sbin/groupadd -g 54326 kmdba /usr/sbin/groupadd -g 54330 racdba /usr/sbin/useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba oracle /usr/sbin/useradd -u 54331 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba grid passwd grid grid passwd oracle oracle |
2. 디스크 추가 및 공유 디스크 설정(공통)
그리드 및 오라클 엔진 설치 디스크 추가
서버 목록 -> 정보 -> 상단의 새로 만들기 -> 저장소 -> 맨 우측 그림 클릭
VDI 선택
동적 할당 선택
그리드 및 오라클 엔진 설치할 디스크 생성(grid : 30G / oracle : 30G)
선택 클릭하여 디스크 추가하기
공유 디스크 생성
서버 목록 -> 정보 -> 상단의 새로 만들기 -> 저장소 -> 맨 우측 그림 클릭
VDI 선택
동적 할당 선택
ASM 디스크 생성(MGMT 영역 : 40G(필수) / OCR : 15G / DATA : 30G / RECO 15G
시간이 상당히 소요됨(약 10분)
디스크 추가 완료된 모습, 선택 눌러서 종료
등록된 디스크 제거
파일 -> 가상 미디어 관리자 선택
상단의 속성 선택 및 종류 변경 후 적용
1번기 정보 -> 설정
저장소 -> 디스크 추가 선택
공유 디스크 선택
디스크 정보 확인
2번기 정보 -> 설정
저장소 -> 디스크 추가 선택
공유 디스크 선택
디스크 추가 및 내용 확인
OS 부팅 및 디스크 확인
엔진 설치 디스크 포맷 및 마운트 설정
디스크 확인(엔진 설치 디스크는 작성자 서버 기준/dev/sdb)
fdisk -l /dev/sdb n -> p -> enter -> enter -> +30G -> p |
파티션 추가 생성
n -> p -> enter -> enter -> enter -> p ->w |
파티션 포맷
mkfs.ext4 /dev/sdb1 -> enter mkfs.ext4 /dev/sdb2 -> enter |
마운트 설정 및 확인
cd / mkdir /grid mkdir /oracle mount /dev/sdb1 /grid mount /dev/sdb2 /oracle df -h |
오토마운트 설정 방법
디스크의 uuid 확인 및 uuid 복사
blkid |
오토 마운트 등록 파일을 열고 아래처럼 내용 작성
vi /etc/fstab UUID=4a1f9ed8-8837-432d-9a1a-14f5b64c3cd3 /grid ext4 defaults 0 0 UUID=75eb2227-4dd1-4c67-a115-97cc94abd07f /oracle ext4 defaults 0 0 |
저장 후 재기동 후 확인
wq reboot df -h |
재기동 시 에러 발생한다면, 오토 마운트 정보 입력 에러 시 정상 부팅이 안 됨
해결책은 https://peryh.tistory.com/69
공유 디스크 구성, 파티션 및 파일시스템 지정(공유 디스크는 작성자 서버 기준 /dev/sdc)
fdisk /dev/sdc
n -> p -> 1 -> enter -> enter -> t -> 8e(LVM) -> p -> w
|
논리적 스토리지 생성
pvs/vgs 생성 논리적 개념은(https://tech.cloud.nongshim.co.kr/2018/11/23/lvmlogical-volume-manager-1-%EA%B0%9C%EB%85%90/)참조
pvcreate /dev/sdc1 vgcreate asm /dev/sdc1 pvs |
lvs 생성
lvcreate -n ocr01 -L 5G asm lvcreate -n ocr02 -L 5G asm lvcreate -n ocr03 -L 5G asm lvcreate -n mgmt01 -L 20G asm lvcreate -n mgmt02 -L 20G asm lvcreate -n data01 -L 10G asm lvcreate -n data02 -L 10G asm lvcreate -n data03 -L 10G asm lvcreate -n reco01 -L 5G asm lvcreate -n reco02 -L 5G asm #lvcreate -n reco03 -L 5G asm => 공간부족으로 생성 불가 lvcreate -n reco03 -L 4G asm |
생성된 디스크 확인
lvs lsblk |
2번기 확인, 1번기에서 설정한 디스크 정보가 없음
lvs lsblk |
디스크 내용에 대한 정보가 없기 때문, OS 커널이 인식하는 파티션 정보와 일치하지 않기 때문에 /dev 디렉토리 밑에 디바이스 파일이 생성되지 않음, reboot 하지 않고 파티션을 인식 시키는 명령으로 수행(해당 디바이스가 umount 상태에서만 가능)
단, 파일시스템에 대한 자동 동기화는 솔루션이나 다른 도움이 필요함
만약, 1번기에서 file을 생성 후 partprobe로 동기화 후에 2번기에서 ls 해도 해당 파일은 보이지 않음(remount 해야 보임)
partprobe |
디스크 권한 및 소유자 변경을 위한 확인(1번, 2번기 둘 다 수행)
ls -la /dev/asm/* |
udev 설정, 내용 참조 : (https://lascrea.tistory.com/89)
vi /etc/udev/rules.d/60-raw.rules
KERNEL=="dm-0",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-1",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-2",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-3",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-4",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-5",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-6",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-7",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-8",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-9",OWNER="grid",GROUP="dba",MODE="0660" KERNEL=="dm-10",OWNER="grid",GROUP="dba",MODE="0660" |
권한 적용, 권한 변경된 디스크 확인
udevadm control --reload-rules
udevadm trigger --action=add
ls -l /dev/dm* |
grid 유저를 생성하지 않고서는 적용해도 해당 내용이 변경되지 않음(그래서 처음 생성하고 시작함)
유저 생성 후 시도 시 정상 변경
3. 라이브러리 설치(공통)
오라클 DB 설치를 위한 필요 라이브러리
yum install -y bc
yum install -y binutils
yum install -y compat-libcap1
yum install -y compat-libstdc++-33
yum install -y elfutils-libelf
yum install -y elfutils-libelf-devel
yum install -y fontconfig-devel
yum install -y glibc
yum install -y glibc-devel
yum install -y ksh
yum install -y libaio
yum install -y libaio-devel
yum install -y libX11
yum install -y libXau
yum install -y libXi
yum install -y libXtst
yum install -y libXrender
yum install -y libXrender-devel
yum install -y libgcc
yum install -y libstdc++
yum install -y libstdc++-devel
yum install -y libxcb
yum install -y make
yum install -y net-tools
yum install -y nfs-utils
yum install -y python
yum install -y python-configshell
yum install -y python-rtslib
yum install -y python-six
yum install -y targetcli
yum install -y smartmontools
yum install -y sysstat
yum install -y unzip
|
xterm을 통한 X-window를 위한 패키지 설치, 아래 패키지가 설치 되면 X-window로 서버 다이렉트 접속이 아니라
putty를 연결한 host에서 GUI 설치 가능(단, 접속 프로그램이 mobaxterm 처럼 해당 windows를 지원해야 함)
yum -y install xorg* |
미 설치 시 아래와 같은 에러 발생
설치 시 아래처럼 설치 창 나옴
4. 미사용 서비스 및 hugepage, MTU 설정(공통)
서비스 확인
systemctl list-unit-files | egrep "firewalld.service|chronyd.service|ntpdate.service|avahi-daemon.service"
|
DNS 중지
systemctl stop avahi-daemon.socket systemctl stop avahi-daemon systemctl disable avahi-daemon systemctl status avahi-daemon |
시간 동기화 중지
systemctl stop chronyd systemctl disable chronyd mv /etc/chrony.conf /etc/chrony.conf.bak systemctl status chronyd |
방화벽 중지
systemctl stop firewalld systemctl disable firewalld systemctl status firewalld |
NTP 중지
systemctl stop ntpdate systemctl disable ntpdate systemctl status ntpdate |
transparent hugepages 비활성화 설정(https://docs.oracle.com/en/database/oracle/oracle-database/12.2/ladbi/disabling-transparent-hugepages.html#GUID-02E9147D-D565-4AF8-B12A-8E6E9F74BEEA)
활/비활성 여부 확인(always는 활성 상태)
cat /sys/kernel/mm/transparent_hugepage/enabled |
설정 변경(위 사진이 전, 아래 사진이 후)
vi /etc/default/grub
GRUB_CMDLINE_LINUX="rd.lvm.lv=ol/root rd.lvm.lv=ol/swap rhgb quiet transparent_hugepage=never" |
변경 사항 적용
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.org
grub2-mkconfig -o /boot/grub2/grub.cfg
|
재부팅 후 변경사항 확인(Anonymous HugePages의크기가 0이면 적용 완료, 위 사진이 전, 아래 사진이 후)
cat /sys/kernel/mm/transparent_hugepage/enabled grep Huge /proc/meminfo
rebootcat /sys/kernel/mm/transparent_hugepage/enabled
grep Huge /proc/meminfo
|
Private MTU 사이즈 변경, Private MTU 사이즈는 9000 권고
1번, 2번 서버의 MTU 사이즈는 무조건 같게 설정, MTU size가 다를 경우 2번 노드에서 root.sh 돌리는 도중 실패함
내 인터페이스 확인(외부 : 192.168.88.X / 내부 : 192.168.11.X)
ifconfig |
내부망 인터페이스 확인 및 설정
ip link show enp0s8 ip link set enp0s8 mtu 9000 ip link show enp0s8 |
5. 파라미터 및 유저 리소스 설정(공통)
메모리 확인
cat /proc/meminfo | grep MemTotal
|
페이지 확인
getconf PAGESIZE |
kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 2549152 # MemTotal (KB) * 1024 / 4096 page 단위 (Doc ID 301830.1) kernel.shmmax = 5220663296 # MemTotal (KB) * 1024 / 2 bytes 단위(Doc ID 567506.1) kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 |
커널 파라미터 적용
sysctl -p |
유저 리소스 제한
grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 grid soft stack 10240 grid hard stack 32768 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 oracle soft memlock 9176947 # MemTotal의 약 90% (KB) oracle hard memlock 9176947 # MemTotal의 약 90% (KB) |
/etc/hosts 파일 변경 전 장치 확인
hostname ifconfig |
해당 정보를 /etc/hosts 내부에 기입
### Public 192.168.88.79 ol79rac1 192.168.88.80 ol79rac2 ### Private 192.168.11.79 ol79rac1-priv 192.168.11.80 ol79rac2-priv ### Virtual 192.168.88.81 ol79rac1-vip 192.168.88.82 ol79rac2-vip ### SCAN 192.168.88.83 ol79rac-scan |
6. 환경변수 설정, 권한 설정
grid 유저 프로파일 설정
su - grid
vi ~/.bash_profile # Grid Environment: export ORACLE_BASE=/grid/app/base
export GRID_HOME=/grid/app/12c/grid
export ORACLE_HOME=$GRID_HOME
export ORACLE_SID=+ASM1 # 2번 노드는 +ASM2
export BASE_PATH=/usr/sbin
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH:$HOME/.local/bin:$HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export PS1=`whoami`@`hostname`\['$ORACLE_SID'\]':$PWD$ '
|
oracle 유저 프로파일 설정 및 적용
# Oracle Environment:
export ORACLE_BASE=/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12c/dbhome_1
export ORACLE_PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export ORACLE_SID=RAC1 # 2번 노드는 RAC2
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.KO16MSWIN949
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export PATH=$PATH:$ORACLE_PATH:$HOME/.local/bin:$HOME/bin
# Set up the shell variables:
export EDITOR=vi
export LANG=C
export PS1=`whoami`@`hostname`\['$ORACLE_SID'\]':$PWD$ '
. ~/.bash_profile |
설치 파일 각 디스크로 전송 및 확인
ls -l /grid /oracle |
디렉터리 권한 변경
chmod -R 775 /grid /oracle chown -R grid. /grid /oracle chown -R oracle. /oracle ls -l / ; ls -l /grid /oracle |
7. 그리드 엔진 설치
설치 파일 압축 해제
su - grid cd /grid mkdir -p $GRID_HOME unzip <압축파일명> -d $GRID_HOME |
ssh 접속 설정(RAC 설치 시, 1번기에서 설치되는 내역을 ssh를 통해 2번기로 파일을 넘겨주기 때문에 필수적으로 설정해야 함)
cd $GRID_HOME/oui/prov/resources/scripts
./sshUserSetup.sh -user grid -hosts "ol79rac1 ol79rac2" -noPromptPassphrase -advanced
|
중간에 작성해 줄 부분
Do you want to continue and let the script make the above mentioned changes (yes/no)? yes The user may be prompted for a password here since the script would be running SSH on host ol79rac1. Warning: Permanently added 'ol79rac1,192.168.88.79' (ECDSA) to the list of known hosts. grid@ol79rac1's password: grid 입력 Done with creating .ssh directory and setting permissions on remote host ol79rac1. Creating .ssh directory and setting permissions on remote host ol79rac2 THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR grid. THIS IS AN SSH REQUIREMENT. The script would create ~grid/.ssh/config file on remote host ol79rac2. If a config file exists already at ~grid/.ssh/config, it would be backed up to ~grid/.ssh/config.backup. The user may be prompted for a password here since the script would be running SSH on host ol79rac2. Warning: Permanently added 'ol79rac2,192.168.88.80' (ECDSA) to the list of known hosts. grid@ol79rac2's password: grid 입력 Done with creating .ssh directory and setting permissions on remote host ol79rac2. |
ssh 정상적으로 맺었는지 확인, remote node 접속 시 패스워드를 묻지 않아야 함
ssh ol79rac2 date #외부 통신 영역 ssh ol79rac2-priv date #내부 interconnect 영역 #interconnect 영역이 ssh 설정되지 않았다면 yes만 눌러주면 설정 완료 |
해당 스크립트를 돌린 후 grid 설치 중 ssh 연결이 안되어 있다면 수동으로 ssh 연결 맺기
cvuqdisk 패키지 설치(모든 노드, 해당 패키지가 없으면 클러스터 확인 유틸리티(CVU)는 공유 디스크를 찾을 수 없음)
해당 패키지는 oinstall 그룹이 존재해야만 설치되며, 없을 경우 에러나서 설치 불가
echo $GRID_HOME #해당 내용 복사 exit cd /grid/app/12c/grid/cv/rpm ls -l rpm -ivh cvuqdisk-1.0.10-1.rpm cat /etc/hosts scp cvuqdisk-1.0.10-1.rpm root@ol79rac2:/tmp yes root ssh ol79rac2 cd /tmp ls -l | grep cvu rpm -ivh cvuqdisk-1.0.10-1.rpm |
설치 전 사전 점검(해당 부분 확인을 위해서는 /tmp 디렉터리가 5G 이상이여야 함, 아니면 / 에 여유 공간 필요)
필수 사항은 아니며, 맞추면 장애 없이 설치가 가능하고, grid 설치 전 check 사항에서 한번 더 체크 가능
새로운 접속창으로 grid 접속
cd $GRID_HOME ./runcluvfy.sh stage -pre crsinst -n ol79rac1,ol79rac2 -osdba dba -orainv dba -verbose
|
아래는 설치 전 테스트 내용 확인
서버에서 바로 설치하는 것이 아니라면 X-windows 설정이 필요
X-windows 설치 : root 유저에서 yum - y install xorg* 패키지 설치 cd $GRID_HOME ./gridSetup.sh |
노드 추가
설치 전 ssh 접속 설정을 안했다면 여기서 ssh connectivity로 설정 가능
cd $GRID_HOME/oui/prov/resources/scripts
./sshUserSetup.sh -user grid -hosts "ol79rac1 ol79rac2" -noPromptPassphrase -advanced
|
정상 설정인지 확인하는 법은 Test 눌러서 선택하면 아래같은 화면이 나옴
인터페이스 설정
유저 패스워드 설정(oracle_4U)
EM 설치 안함
그룹 생성 다 한 경우 아래처럼, dba만 설정한 경우 전부 dba 그룹으로 설정
asmoper를 주지 않은 경우 아래 같은 에러 발생
아래처럼 설정
yes로 넘어가기
비어있지 않아도 YES
스크립트 수동으로 돌릴 예정
설정 내용 확인, 패키지가 없거나 kernel 설정이 부족한 경우 변경 후 retry
쉘 돌리기
순서는 1번기 orainstRoot.sh -> 2번기 orainstRoot.sh -> 1번기 root.sh -> 2번기 root.sh
root.sh 이 에러나는 경우 재설치 해야함
2번기의 ASM 디스크 인식을 못하는 경우 cluster 17번에서 막히거나 1 에러 내용 나옴
아니면 무사히 넘어갔다 하더라도 2번기의 root 쉘 이후 클러스터 리소스에 등록 안되는 문제 발생함
아래는 정상적으로 설치되는 과정
2번기도 동일하게 진행
이후 ok를 눌러 계속 진행
설치 완료 후 INS-20802 에러 발생, details로 내용 확인
로그 내역을 보면 SCAN ip가 DNS에 등록되어 있지 않아서 발생한 문제
무시 가능하니 OK로 마무리
fail 2개가 났지만 괜찮음 Next 선택
스킵할 건데 괜찮냐고 묻는 메시지, YES
설치 완료
설치 된 내용 확인, 정상적으로 등록된 리소스들이 보임
8. Diskgroup 생성(1번기)
DB를 생성 시, datafile을 넣기 위한 diskgroup 생성이 필요함
su - grid asmca |
디스크 그룹 선택 및 Create
DATA 디스크 영역 생성
RECOVERY 데이터 영역 생성
생성 내용 확인
디스크 그룹 생성 조회
export ORACLE_SID=+ASM asmcmd ls -l |
9. 오라클 엔진 설치
1번기 오라클 엔진 파일 압축 해제
su - oracle cd /oracle ls -l unzip Oracle\ Database\ 12.2.0.1.0\ for\ Linux\ x86-64\,\ 3.2\ GB.zip |
ssh 설정
cd /oracle/database/sshsetup
./sshUserSetup.sh -user oracle -hosts "ol79rac1 ol79rac2" -noPromptPassphrase -advanced
|
오라클 엔진 설치
cd /oracle/database ls -l ./runInstaller |
메일 안받음, 체크 해제 후 Yes
엔진만 인스톨 할 예정이라 software only 선택
RAC 선택
node 선택, grid와 마찬가지로 ssh 접속 잘 했다면, 그냥 Next
아니면 테스트 확인
엔터프라이즈 선택
경로 선택
그룹 설정, 운영 시에는 일반적으로 DBA로 다 통일함
실제로 아래처럼 변경 후 Next
SCAN이 없어서 나오는 에러 무시하고 Next
경고창 무시
인스톨 진행
스크립트는 1번, 2번 순으로 수행
1번기 수행
2번기 수행
엔진 설치 완료
10. 오라클 DB 생성(1번기)
DB생성
dbca |
Advanced 선택
Custom
Node 선택
인스턴스 이름 지정
데이터 파일 경로 지정, OMF 해제
yes
컴포넌트 선택
메모리 설정
인코딩 설정
샘플 스키마
에러가 발생한다
에러나면 해제
EM 및 CVU 삭제
비밀번호 설정(oracle_4U)
스크립트 생성 시 체크
파일 크기랑 경로 설정 원하면 Customize 클릭, 여기 내부에서 선택
파라미터 관련 설정은 All initialization 선택, 특이사항 없으면 Next
SCAN 무시
Finish 선택
생성 중, 에러 없으면 정상 완료
설치 완료, 계정정보를 GUI에서 컨트롤 하고 싶으면 Password 선택
후속처리
root 계정에서도 srvctl 및 crsctl 사용을 위해 프로파일 적용
su - vi ~/.bash_profile 아래내용 기입 # User specific environment and startup programs export ORACLE_HOME=$ORACLE_BASE/product/12c/dbhome_1 export GRID_HOME=/grid/app/12c/grid PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$GRID_HOME/bin export PATH |
이후 적용, 확인
. ~/.bash_profile which srvctl |
'데이터베이스 > oracle' 카테고리의 다른 글
[운영]Lock Object 해결(미완) (0) | 2022.04.19 |
---|---|
[MOS]ORA-600 / ORA-07445 / ORA-700 세부 내용 확인 방법 (0) | 2022.04.14 |
[oracle 11g] ADR(Automatic Diagnostic Repository) (0) | 2022.04.08 |
[oracle]AWR 주기 확인 및 저장소 증설 방법 (0) | 2022.04.08 |
DBMS(DataBase Management System)의 개요 (0) | 2021.12.23 |