이전 글에서 Oracle 설치를 위한 OS 사전 환경 구성을 완료하였다.
이번 글에서는 이어서 Oracle Database 19c 소프트웨어 설치 및 데이터베이스 생성(DBCA) 과정을 진행한다.

설치 파일 구성
Oracle 19c 설치 파일은 아래 공식 사이트에서 다운받을 수 있다.
https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html
※ 다운로드를 위해 Oracle 계정 로그인 필요 (계정이 없다면 회원가입 진행)

- LINUX.X64_193000_db_home.zip
Oracle 19c 설치의 핵심 파일이다.
약 3GB 크기의 압축 파일이며, 해당 파일만으로 설치가 가능하다.

- LINUX.X64_193000_examples.zip
예제 스키마가 포함되어 있어, 실습용이라면 다운받는 것이 좋다. (필수는 X)
VMware에서 Shared Folder 설정 확인
설치 파일을 가상머신으로 옮기기 위해 Shared Folder 설정을 확인한다.

가상머신을 먼저 Shut down한다.
[Edit virtual machine settings] 클릭

[Edit virtual machine settings] 클릭
Shared Folder 경로 확인
다음 항목 확인
- Folder sharing : [Always enabled]
- 공유 폴더 경로 존재 여부
경로가 없다면 [Add] 버튼 클릭 후 추가
Linux에서 Shared Folder mount
root 계정에서 실행
mkdir -p /mnt/hgfs
vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other
.host:/ → VMware 공유폴더 전체 의미
/mnt/hgfs → 리눅스에서 접근할 경로

ls 해보면, shared 폴더가 뜨며 정상적으로 mount된 것을 확인할 수 있다.
Oracle 설치 파일 압축 해제
파일 다운로드가 끝났다면, 파일들을 shared 폴더에 넣는다.

mv /mnt/hgfs/shared/LINUX.X64_193000_db_home.zip /u01/app/oracle/product/19.3.0/dbhome_1/
cd /u01/app/oracle/product/19.3.0/dbhome_1
unzip -q LINUX.X64_193000_db_home.zip

파일을 $ORACLE_HOME 경로로 이동시키고, unzip 명령어로 압축을 해제한다.
unzip 뒤에 -q 옵션(quiet mode)을 붙여서 명령어를 실행하면, 압축을 푸는 파일들을 화면에 출력하지 않는다.
/u01/app/oracle/product/19.3.0/dbhome_1/ 경로는 $ORACLE_HOME 으로 간단하게 적을 수 있다.
이동(mv)하는 과정까지 한번에 실행하려면
unzip -q /mnt/hgfs/shared/LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
-d 옵션은 압축을 풀 위치(destination)를 지정하는 것이다.
runInstaller 실행 (+ 오류 해결 과정)

ls해보면 압축이 풀린 것을 확인할 수 있다.
이 중에서 runInstaller를 실행시킨다.
./runInstaller

▼ 오류 발생 시
※ Oracle 19c는 출시 당시 기준으로 Oracle Linux 7을 지원하기 떄문에, 나처럼 Oracle Linux 8을 사용한다면 runInstaller 실행 시 오류가 발생할 수 있다. 그런 경우 아래와 같이 따라하면 된다.
cd $ORACLE_HOME/cv/admin
vi cvu_config

# 맨 아래 추가
CV_ASSUME_DISTID=OL7

다시 runInstaller 실행시 정상 작동한다.
설치
구성 옵션 선택

[Set Up Software Only] 선택 후 [Next]
DBCA로 데이터베이스를 별도로 생성할 예정이므로 소프트웨어만 설치한다.
데이터베이스 설치 옵션

[Single instance database installation] 선택 후 [Next]
Single Instance : 하나의 서버에서 하나의 DB 운영 방식
※ Oracle Real Application Clusters (RAC)는 여러 대의 서버가 하나의 DB를 공유하는 방식이다.
데이터베이스 에디션 선택

모든 기능이 포함된 [Enterprise Edition] 선택
설치 경로 확인

Oracle base (/u01/app/oracle)는 오라클 소프트웨어와 db 관련 설정 파일들이 설치되는 디렉토리이다.
엔진은 /u01/app/oracle/product/19.3.0/dbhome_1에 설치된다.
기본값 그대로 사용 후 [Next] 클릭
Inventory Directory 설정

Inventory Directory 는 설치 메타데이터가 저장되는 경로이다.
인벤토리 권한 그룹은 [dba]로 지정하고 [Next]
OS 그룹 권한 설정

OSDBA : 데이터베이스 관리자 권한
OSOPER : DB 시작/종료 권한
OSBACKUPDBA : 백업 권한
OSDGDBA : Data Guard 관리 권한
OSKMDBA : 암호화 키 관리 권한
→ 모두 [dba]로 변경 후 [Next]
Root Script 자동 실행 설정

설치 과정에서 root 권한으로 스크립트를 실행해야 하는 경우, 자동으로 실행하도록 한다.
[Automatically run configuration scripts] 체크
root 비밀번호 입력하고 [Next]
사전 점검 경고 (compat-libcap1)

사전점검 화면에서 compat-libcap1-1.10이 존재하지 않는다고 경고창이 뜬다.
Oracle 19c 설치 체크 로직이 linux 7 버전 기준으로 검사하기 때문에 생기는 에러이다.
linux 7에서는 compat-libcap1이었지만, linux 8에서는 libcap으로 바뀌었다.
preinstall 패키지를 설치한 상황이라면, libcap은 이미 설치되어 있다. 따라서 무시해도 되는 에러이다.

설치 요약

[Install] 클릭

[Yes]

설치가 완료되었다.
[Close] 클릭
Listener 실행
리스너는 DB 접속을 가능하게 하는 네트워크 프로세스이다.
lsnrctl
start


SQL*Plus 기본 환경 설정 (glogin.sql)
glogin.sql은 sqlplus에 접속할 때, 모든 사용자에게 적용되는 설정이다.
※ login.sql은 사용자별 설정이다.
cd $ORACLE_HOME/sqlplus/admin
vi glogin.sql
# 아래 내용 추가
set sqlprompt '&_USER@&_CONNECT_IDENTIFIER> '
define_editor=vi


sqlplus 접속 시 기본 프롬프트 표시 형식은 SQL >이다.
이렇게 설정해주면, SYS@ORCL > 형식으로 변경된다
| &_USER | 현재 접속 사용자 |
| &_CONNECT_IDENTIFIER | 접속한 DB 이름 |
따라서 누가 어떤 DB에 접속했는지 편리하게 확인할 수 있게 된다.
define_editor=vi
sqlplus에서 edit 명령 실행 시 사용할 에디터를 vi로 설정하는 명령이다.
SYS@ORCL > edit
이렇게 입력하면, vi 에디터가 실행된다.
DBCA 실행 (데이터베이스 생성)
dbca &

&를 붙이면 터미널창을 계속 사용할 수 있도록 백그라운드 실행하는 명령이다.

[Create a database] 선택 후 [Next]
구성 방식 선택

메모리 할당, 샘플 스키마 설치 등 세부 사항들을 직접 설정할 것이기 때문에
[Advanced configuration] 선택한다.
데이터베이스 유형

[Custom Database] 선택 후 [Next]
SID 설정

나중에 추가로 다른 데이터베이스 생성 시 SID를 대문자로 만들 거라서, orcl도 SID를 대문자로 변경해준다.
이거만 소문자면 헷갈리기 때문에...
[Create as Container database] 체크 해제 후 [Next]
※ Container database?
하나의 컨테이너(CDB)에 여러 개의 독립적인 데이터베이스(PDB)를 포함하는 구조이다.
데이터파일 경로 지정

데이터베이스 파일의 경로를 /u02/oradata/orcl로 지정한다
[OMF] 체크 해제 후 [Next]
※ Oracle-Managed Files(OMF)
파일명을 자동 생성하는 기능이다.
OMF 사용 X
- /u02/oradata/orcl/system01.dbf
- /u02/oradata/orcl/sysaux01.dbf
- /u02/oradata/orcl/users01.dbf
OMF 사용
- /u02/oradata/ORCL/datafile/o1_mf_system_k3j2h4l9_.dbf
- /u02/oradata/ORCL/datafile/o1_mf_sysaux_j8sk2k3_.dbf
이렇게 자동으로 파일명을 생성해준다.
OMF와 ASM이 둘다 파일을 자동 관리한다는 관점에서 비슷한 것 아닌가..? 라는 궁금증에 ASM도 함께 알아보았다.
※ ASM (Automatic Storage Management)
ASM은 디스크 자체를 관리하는 기능이다.
OS 파일 시스템 대신 Oracle이 직접 디스크를 관리한다
디스크
└── OS 파일시스템 (ext4, xfs 등)
└── /u01
└── /u02
└── oradata
└── system01.dbf
→ 파일 시스템 방식
디스크
└── ASM (Oracle이 직접 관리)
└── +DATA
└── ORCL
└── DATAFILE
→ ASM 방식
ASM 환경에서는 OS에서 ls 명령으로 파일이 보이지 않, Oracle 내부에서만 보인다.
Fast Recovery Area 설정
# root에서
mkdir -p /u02/oradata/fast_recovery_area/orcl
chown -R oracle:dba /u02
chmod -R 775 /u02

fast_recovery_area 디렉토리를 미리 생성해둔다.

/u02/oradata/fast_recovery_area/orcl로 경로 지정한다.
용량은 8GB로 설정하였다. = 8192MB
※ Enable archiving
체크 시 실시간으로 발생하는 모든 archive log가 저장된다.
장애가 발생하면 최신 시점으로 모두 복구할 수 있지만, 계속 쌓이면서 용량을 많이 차지하기 때문에 체크하지 않는다.
체크하지 않으면 default가 No_Archive_Log 모드가 된다.

[Next]

[Next]
메모리 설정

Shared Memory 약 2GB로 설정한다.
EM Express 설정

EM database Express는 웹 브라우저를 통해 데이터베이스의 상태를 모니터링할 수있는 도구이다.
포트번호가 5500으로 되어있는데, 나중에 브라우저 주소창에서 https://localhost:5500/em을 입력하여 접속하게 된다.
기본값 유지 후 [Next]

리스너가 선택되지 않았다고 경고창이 뜨는데, [Yes] 누르면 된다.

비밀번호 oracle로 설정

비밀번호가 간단하여 생기는 경고창이다. [Yes]를 누른다.
DB 생성 옵션

[Create database] 체크
[Save as a database template]를 체크하면, 현재 설정한 값들을 나중에 또 쓸 수 있도록 템플릿으로 저장한다.
[Generate database creation scripts]는 데이터베이스를 만들지 않고 SQL 스크립트 파일만 생성한다.
[customize storage locations] 클릭

redo log Group 1, 2, 3을 모두 100MB로 변경해준다. 하나씩 변경할 때마다 [Apply]를 눌러야 정상 적용된다.
완료되면 [Ok], [Next] 클릭


설치가 완료되었다. [Close]
예제 스키마 설치
unzip /mnt/hgfs/shared/LINUX.X64_193000_examples.zip

압축을 해제한다.

cd examples/
./runInstaller
※ 오류 발생 시
export CV_ASSUME_DISTID=OL7
echo $CV_ASSUME_DISTID
# OL7 출력되면 됨






사진과 동일하게 진행한다.
HR 스키마 생성
cd $ORACLE_HOME/demo/schema

cd human_resources/

경로를 이동한다.
sqlplus / as sysdba
@hr_main.sql
sqlplus 접속하고, hr_main.sql 파일 실행


파일을 실행하면 4가지 매개변수를 입력해야 한다. 사진과 동일하게 입력한다.
- 비밀번호: hr
- default 데이터 저장소: users
- 임시 저장소: temp
- 설치 기록(로그) 저장 경로: 지정된 폴더에 스키마 설치 과정과 에러 내역을 저장
Oracle Database 19c 소프트웨어 설치 및 데이터베이스 생성이 완료되었다.
create user scott identified by tiger
default tablespace users
quota unlimited on users;
grant connect, resource to scott;
!vi demobld.sql
connn scott/tiger
@demobld
select * from tab;
TNAME TABTYPE CLUSTERID
---------- ------------- ----------
BONUS TABLE
EMP TABLE
DEPT TABLE
SALGRADE TABLE'Database > Installation' 카테고리의 다른 글
| [Oracle 19c 설치 (1)] 19c 설치 전 사전 환경 설정 (0) | 2026.04.08 |
|---|