Oracle AI Database 26ai Free 를 RPM 으로 설치해 단일 인스턴스를 올린다. 설치 프로그램 GUI 없이 패키지 설치와 configure 한 번으로 컨테이너 DB FREE 와 플러거블 DB FREEPDB1 이 만들어진다.[1] 마지막 절에서 컨테이너 이미지로 띄우는 방법을 같이 둔다.
현행 버전은 26ai Free 23.26.3 이다.[2]
| 항목 | 값 |
|---|---|
| 운영체제 | Oracle Linux 8 · 9 · 10, RHEL 8 · 9 · 10 (x86_64). Arm(aarch64)은 Oracle Linux 8 · 9[1:1] |
| 디스크 | /opt 아래 약 9 GB. /opt/oracle 을 심볼릭 링크로 두면 안 된다[1:2] |
| 권한 | root 로 설치한다 |
| 포트 | 1521 (Listener). /etc/sysconfig/oracle-free-26ai.conf 의 LISTENER_PORT 로 바꾼다 |
아래는 Oracle Linux 9 / RHEL 9 x86_64 기준이다. 다른 OS 는 패키지 파일 이름의 el9 부분만 다르다.
preinstall 패키지가 커널 파라미터 · 사용자(oracle) · 그룹 · limits 를 대신 잡아 준다. Oracle Linux 는 저장소에서 바로 설치하고, RHEL 은 RPM 을 받아 설치한다.
# Oracle Linux 9
dnf -y install oracle-ai-database-preinstall-26ai
# RHEL 9
curl -LO https://yum.oracle.com/repo/OracleLinux/OL9/appstream/x86_64/getPackage/oracle-ai-database-preinstall-26ai-1.0-1.el9.x86_64.rpm
dnf -y install ./oracle-ai-database-preinstall-26ai-1.0-1.el9.x86_64.rpm
RPM 을 받아 설치한다. 약 1.4 GB 다.[2:1]
curl -LO https://download.oracle.com/otn-pub/otn_software/db-free/oracle-ai-database-free-26ai-23.26.3-1.el9.x86_64.rpm
dnf -y install ./oracle-ai-database-free-26ai-23.26.3-1.el9.x86_64.rpm
설치 위치는 다음과 같다.[1:3]
| 경로 | 내용 |
|---|---|
/opt/oracle |
Oracle base |
/opt/oracle/product/26ai/dbhomeFree |
Oracle home |
/opt/oracle/oradata/FREE |
데이터 파일 |
/opt/oracle/diag |
진단 로그 |
/etc/sysconfig/oracle-free-26ai.conf |
설정 파라미터 |
/etc/init.d/oracle-free-26ai |
설정 · 기동 스크립트 |
configure 를 실행하면 SYS · SYSTEM · PDBADMIN 비밀번호를 묻고 데이터베이스와 Listener 를 만들어 기동한다. 비밀번호는 8자 이상에 대문자 · 소문자 · 숫자를 하나씩 넣어야 한다.[1:4]
/etc/init.d/oracle-free-26ai configure
기동 · 정지는 같은 스크립트로 한다.
/etc/init.d/oracle-free-26ai start
/etc/init.d/oracle-free-26ai stop
부팅 때 자동 기동하려면 systemd 에 등록한다. systemd 가 init 스크립트를 감싸서 같은 이름의 유닛으로 보여 준다.
systemctl enable oracle-free-26ai
systemctl status oracle-free-26ai
firewall-cmd --permanent --add-port=1521/tcp
firewall-cmd --reload
oracle 사용자로 환경 변수를 잡고 접속한다.[1:5]
su - oracle
export ORACLE_SID=FREE
export ORAENV_ASK=NO
. /opt/oracle/product/26ai/dbhomeFree/bin/oraenv
sqlplus sys@localhost:1521/FREEPDB1 as sysdba
select instance_name, version_full, status from v$instance;
show pdbs;
응용에서는 localhost:1521/FREEPDB1 서비스 이름으로 붙는다. JDBC 는 jdbc:oracle:thin:@localhost:1521/FREEPDB1 이다.[2:2]
매번 환경 변수를 잡기 번거로우면 oracle 사용자의 ~/.bash_profile 에 위 네 줄을 넣어 둔다.
Oracle Container Registry 의 Free 이미지를 그대로 쓴다. 데이터는 /opt/oracle/oradata 볼륨에 두고, 호스트 디렉터리를 마운트할 때는 컨테이너 안의 oracle 사용자(UID 54321)가 쓸 수 있어야 한다.[3]
docker pull container-registry.oracle.com/database/free:latest
mkdir -p /data/oracle/oradata
chown 54321:54321 /data/oracle/oradata
docker run -d --name oracle-free \
-p 1521:1521 \
-e ORACLE_PWD=${ORACLE_PWD} \
-v /data/oracle/oradata:/opt/oracle/oradata \
container-registry.oracle.com/database/free:latest
docker logs -f oracle-free # DATABASE IS READY TO USE! 가 찍히면 접속한다
ORACLE_PWD 는 SYS · SYSTEM · PDBADMIN 에 같이 들어간다. 이미지를 직접 만들려면 Oracle Database 컨테이너 이미지 빌드 를 본다.
Installing Oracle AI Database Free (Linux) — 2026-09-20 확인. https://docs.oracle.com/en/database/oracle/oracle-database/26/xeinl/installing-oracle-database-free.html ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
최신 버전 26ai Free 23.26.3 — 2026-09-20 확인. https://www.oracle.com/database/free/get-started/ ↩︎ ↩︎ ↩︎
oracle/docker-images OracleDatabase/SingleInstance README. https://github.com/oracle/docker-images/blob/main/OracleDatabase/SingleInstance/README.md ↩︎