์์ ๊ณผ์ ์ ํตํด VM ์ธ์คํด์ค๋ฅผ ์์ฑํ๊ณ ๋ค์์ผ๋ก ์ค์ ์ค์น๋ฅผ ์งํํ๋ค.
์ค์น ํ์ผ์ ์ฎ๊ธด ํ ๋ถํฐ๋ ์ค๋ผํด ๊ณต์ ํํ์ด์ง์ ๋์จ๋๋ก๋ง ๋ฐ๋ผํ๋ฉด ๋๋ค.
1) FileZilla๋ฅผ ์ด์ฉํด vm ์ธ์คํด์ค์ ์ค์นํ์ผ ์ฎ๊ธฐ๊ธฐ
2) VM ์ธ์คํด์ค ๋ด์์ ์ค์น ์งํํ๊ธฐ
1) FileZilla๋ฅผ ์ด์ฉํด vm ์ธ์คํด์ค์ ์ค์นํ์ผ ์ฎ๊ธฐ๊ธฐ
1. FileZilla ํ๋ก๊ทธ๋จ์ ์คํํ๊ณ VM ์ธ์คํด์ค์ ์ฐ๊ฒฐ์ ์ค์ ํ๋ค.
โ FileZilla ํ๋ก๊ทธ๋จ์ ์๋จ ํ์ผ → ์ฌ์ดํธ ๊ด๋ฆฌ์ ๋ฉ๋ด์ ๋ค์ด๊ฐ๋ค
โก ์์ฌ์ดํธ → ์ฐ๊ฒฐ์ ๊ตฌ๋ถํ ์ ์๋ ์ด๋ฆ(๋๋ ๊ทธ๋ฅ ์์ฌ์ดํธ์ฌ๋ ์๊ด X) → ์ฐ๊ฒฐ์ ์ํ ๊ฐ ์ ๋ ฅ

โก-1 ์ผ๋ฐ ์ค์ ๋ด์ฉ
- ํ๋กํ ์ฝ : SFTP - SSH File Transfer Protocol
- ํธ์คํธ : <์ธ์คํด์ค์ public ip(external ip)>
- ์์ ํ์ธํ๋ GCP VM์ธ์คํด์ค์ ์ธ๋ถ ip
- ํฌํธ : (๊ณต๋)
- ๋ก๊ทธ์จ ์ ํ : ํคํ์ผ
- ์ฌ์ฉ์ : <Key comment>
- PuTTY๋ก SSHํค ์์ฑ ์ ์์ ๋์๋ Key comment
โก-2. ์ค์ ํ ํคํ์ผ ์์ ์ฐพ์๋ณด๊ธฐ→ PuTTY๋ก SSHํค ์์ฑ ์ ์ ์ฅํด ๋์๋ Private key ํ์ผ ์ ํ

โข ์ฐ๊ฒฐ→ ํ์ธ


โฃ ์ฐ๊ฒฐ์ด ์ ์์ ์ผ๋ก ๋๋ฉด ๋ค์๊ณผ ๊ฐ์ด vm instance์ ์ ์ ๋ ๋ชจ์ต์ด ๋ณด์ธ๋ค.

2. Oracle Database ์ค์น ํ์ผ์ ์ ์กํ๋ค.
์์ ๋ค์ด๋ก๋ ํด๋์๋ Oracle21cXE ์ค์น ํ์ผ์ drag&drop์ผ๋ก ๊ฐ์ ธ๋ค ๋์ผ๋ฉด ์ ์ก์ด ์์๋๋ค.


(์ฉ๋์ด ํฌ๊ณ ์ต๋ ์๋๊ฐ ์๊ธฐ ๋๋ฌธ์ 10๋ถ ๊ฐ๋ ์์๋์)
์ ์ก์ด ์๋ฃ ๋ ํ ์ธ์คํด์ค์ ํ์ผ์ด ๋ค์ด๊ฐ ๊ฒ์ ํ์ธ ํ ์ ์๋ค.
2) VM ์ธ์คํด์ค ๋ด์์ Oracle21cXE ์ค์น ์งํํ๊ธฐ
2-1) SSH๋ก ์ธ์คํด์ค์ ์ ์ํ๊ธฐ
vm ์ธ์คํด์ค์ ์ ์ํ๊ธฐ ์ํด์ GCP์์ ์ ๊ณตํ๋ SSH๋ฅผ ์ด์ฉํ๊ฑฐ๋ XShell ๋ฑ ํธํ ๋ฐฉ๋ฒ์ผ๋ก ์ ์ํ๋ฉด ๋๋ค.
(GCP์์ ์ ๊ณตํ๋ SSH๋ ๋ฐ๋ก ์ด์ฉํ ์ ์๊ณ ์ธ๋ถ์ ํ๋ก๊ทธ๋จ์ ์ด์ฉํ๋ฉด FileZilla์์ ์ ์ํ๋๊ฒ๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์ค์ ํ ์ ์ ํ ์ ์๋ค.)
๋๋ GCP์์ ์ ๊ณตํ๋ SSH๋ฅผ ์ด์ฉํ๋ค. GCP์ ์ธ์คํด์ค ๋ชฉ๋ก์์ ์ ์ ๊ฐ๋ฅํ๋ค.

SSH๋ฅผ ๋๋ฅด๊ณ ์ ๊น์ ์๊ฐ์ด ํ๋ฅธ ๋ค ์ ์์ ์ผ๋ก ์ ์ ๋๋ฉด ์๋์ ๊ฐ์ด ํฐ๋ฏธ๋์ด ๋ฌ๋ค.

2-2) Oracle21cXE ์ค์น ์งํ
์ดํ ๋ถํฐ๋ ์ค๋ผํด ๊ณต์ ํํ์ด์ง์ ๋ฌธ์๋๋ก๋ง ํ๋ฉด ๋๋ค.
Installation Guide
You can install Oracle Database Express Edition using RPM packages.
docs.oracle.com
๊ฐ๋จํ๊ฒ ์ ๋ฆฌ ํด๋ณด์๋ฉด
1. ๋ณธ ํ๋ก๊ทธ๋จ ์ค์น ์ Preinstallation RPM ์ค์น
1) ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ๋ณ๊ฒฝ
$ sudo -s
2) Preinstallation RPM ๊ตฌ๋ ๊ฐ ์ด์์ฒด์ ์ ๋ฒ์ ๋ณ๋ก ๋ช ๋ น์ด๊ฐ ๋ค๋ฆ
(๋๋ RHEL์ ๊ฐ์ ธ๋ค ๋ง๋ centOS7์ ์ผ๊ธฐ ๋๋ฌธ์ b-1์ ๋ช ๋ น์ด ์ฌ์ฉ)
a. ์ด์์ ์ ๊ฐ Oracle Linux(OL)์ธ ๊ฒฝ์ฐ
a-1. Oracle Linux 8 (OL 8)
# dnf -y install oracle-database-preinstall-21c
a-2. Oracle Linux 7 (OL 7)
# yum -y install oracle-database-preinstall-21c
b. ์ด์์ฒด์ ๊ฐ Red Hat Enterprise Linux(RHEL)์ธ ๊ฒฝ์ฐ
b-1. Red Hat Enterprise Linux 7
# curl -o oracle-database-preinstall-21c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el7.x86_64.rpm
# yum -y localinstall oracle-database-preinstall-21c-1.0-1.el7.x86_64.rpm
b-2. Red Hat Enterprise Linux 8
# curl -o oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm
# dnf -y localinstall oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm
2. ์๊น ์ ์กํด ๋ Oracle 21cXE ์ค์น ํ์ผ๋ก ์ค์น ์งํ
- ์ ์ก๋ ํ์ผ์ ๋ณต์ฌํ๊ฑฐ๋ ์ด๋ ํ ์ค์น ํ์ผ์ด ์๋ ๊ฒฝ๋ก์์ ๋ค์ ๋ช ๋ น์ด ์คํ
(๋๋ ๋์ ๊ณ์ ์ oracle์ด๋ผ๋ ๋๋ ํ ๋ฆฌ๋ฅผ ์์ฑํ๊ณ ์ ์กํด๋์๋ ํ์ผ์ ๋ณต์ฌํด์ ์ค์น ์งํ)
For Oracle Linux 7 ๋๋ Red Hat Enterprise Linux 7 :
# yum -y localinstall oracle-database-xe-21c-1.0-1.ol7.x86_64.rpm
For Oracle Linux 8 ๋๋ Red Hat Enterprise Linux 8 :
# dnf -y localinstall oracle-database-xe-21c-1.0-1.ol8.x86_64.rpm

3.์คํ์ ํ์ ์ค์ ๋ฐ ์ ์ฉ
OracleDatabase ์คํ์ ํ์ํ ์ค์ ๋ค์ /etc/sysconfig/oracle—xe–21c.conf ํ์ผ์์ ์์ ํ ์ ์๋ค.
๋๋ ๊ทธ๋ฅ ๊ธฐ๋ณธ์ผ๋ก ๋์ด ์๋ ์ค์ ํ์ผ์ ์ ์ฉํ๋ค. ๋ค์ ๋ช ๋ น์ด๋ก ์ค์ ํ์ผ์ ์ ์ฉํ๋ค.
(๊ธฐ๋ณธ ์ค์ ๋ด์ฉ์ ์ปจํ ์ด๋ DB (XE)์ XEPDB1 ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํ๊ณ
์ ์ ํฌํธ 1521, Enterprise Manager Express์ ํฌํธ 5500์ผ๋ก ์ค์ ๋๋ค.)
# /etc/init.d/oracle-xe-21c configure
์ค์ ํ์ผ์ด ์คํ๋๋ฉด์ ๋ค์๊ณผ ๊ฐ์ด ๋น๋ฐ๋ฒํธ๋ฅผ ์ค์ ํ๋๋ก ํ๋ line์ด ๋จ๋ฉด ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์ ์ํ ๋ ์ฌ์ฉํ๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํ๊ณ ๋๋ฉด ํ๋ฒ๋ ํ์ธ์ผ๋ก ์ ๋ ฅํ๋ค.

๊ทธ๋ฆฌ๊ณ ์๊ฐ์ด ์ข ์ง๋ ๋ค ๋ค์๊ณผ ๊ฐ์ด ์ค์น๊ฐ ์๋ฃ ๋๋ค.

2-3) ํ๊ฒฝ ๋ณ์ ์ค์
์์ ๋ฐฉ๋ฒ์ผ๋ก ์ค์น๋ฅผ ์๋ฃํ๊ณ sqlplus ๋ช ๋ น์ผ๋ก ์คํํ๊ธฐ ์ํด ๋ช๊ฐ์ง ํ๊ฒฝ๋ณ์๋ฅผ ์ค์ ํด ์ฃผ์ด์ผ ํ๋ค.
(์ด ๋ด์ฉ์ ์์๋ก ์ฌ์ฉ ๊ฐ๋ฅ ํ๋๋ฐ,
์์ธํ ๋ด์ฉ์ ๋ค์ ์ฐพ๊ฑฐ๋ ์ ๋ฆฌํ์ง ๋ชปํด์ ์ฐ์ ๋ด๊ฐ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์จ๋๋ค.)
โ ํ๊ฒฝ๋ณ์ ์ค์ ํ์ผ์ ํธ์งํ๊ธฐ ์ํด vim ์๋ํฐ๋ก ํ์ผ์ ์ฐ๋ค.
# vi ~/.bash_profile
โก ๊ธฐ์กด ๋ด์ฉ ํ๋จ์ ๋ค์ ๋ด์ฉ์ ์ถ๊ฐ ํ ์ ์ฅ>๋ซ๊ธฐ
export ORACLE_HOME=<your_oracle_home>
export ORACLE_SID=<your_oracle_sid>
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
โป ๋ด๊ฐ ์ฌ์ฉํ ํ๊ฒฝ๋ณ์ ์ค์ ํ์ผ(/.bash_profile)์ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ๋ค.
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
#Oracle env setting#Oracle env setting
export ORACLE_HOME=/opt/oracle/product/21c/dbhomeXE
export ORACLE_SID=XE
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export ORACLE_HOME=/opt/oracle/product/21c/dbhomeXE
export ORACLE_SID=XE
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
โข ์ค์ ํ ํ๊ฒฝ๋ณ์ ์ ์ฉ ํ ํ์ธ
# source ~/.bash_profile
# env

โฃ OracleDatabase ์คํ
# sqlplus
๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉ์๋ช ์ ์ ๋ ฅํ๋ผ๋ ๋ด์ฉ์ด ๋์ค๋ฉด ์ ์์ ์ผ๋ก ์ค์ ๋๊ฒ์ด๋ค.

์ด์ ๋ถํฐ๋ ์ด์ ์ ํ๋๊ฒ๊ณผ ๊ฐ์ด ํ ์ด๋ธ ์คํ์ด์ค๋ฅผ ์์ฑํ๊ณ ์ฌ์ฉ์๋ฅผ ์์ฑํ๋ฉด ๋๋ค.