개요
Rancher Desktop에 Oracle XE를 설치한다.
Oracle XE에 사용자를 추가하고, 접속한다.
절차
docker 명령어로 Oracle XE를 추가한다.
Oracle DB 이미지는 Docker Hub에서 받을 수 없다. Docker Hub에서 오라클 약관에 동의하는 절차를 수행할 수 없기 때문이다. 아래 명령어를 이용하여 Oracle에서 직접 받는다.
docker pull container-registry.oracle.com/database/express:latest
docker run -d --name oracle-xe -p 1521:1521 -e ORACLE_PASSWORD=oracle container-registry.oracle.com/database/express:latest
Rancher Desktop에서 Oracle XE Container를 시작한다.

Oracle XE에 접속하여 사용자를 생성한다.
그냥 실행하면 에러가 아래처럼 ORA-65096 에러가 발생한다.
C:\Users\USER>docker exec -it oracle-xe bash
bash-4.2$
bash-4.2$ sqlplus / as sysdba
SQL*Plus: Release 21.0.0.0.0 - Production on Sun Sep 7 03:30:13 2025
Version 21.3.0.0.0
Copyright (c) 1982, 2021, Oracle. All rights reserved.
Connected to:
Oracle Database 21c Express Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
SQL>
SQL> CREATE USER igate IDENTIFIED BY "igate" DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp;
CREATE USER igate IDENTIFIED BY "igate" DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp
*
ERROR at line 1:
ORA-65096: invalid common user or role name
SQL>
이 에러는 CDB$ROOT에서 로컬 사용자를 만들려고 해서 생긴 것이다. Oracle 12c+ (XE 21c 포함)는 멀티테넌트 구조라서 아래 내용을 참고해야 한다.
- ROOT(CDB$ROOT) 에서는 C## 접두어가 붙은 공통 사용자만 생성 가능
- PDB(XEPDB1) 에서는 일반 이름의 로컬 사용자 생성 가능 ← 실사용 권장
즉, Oracle XE는 기본적으로 XEPDB1 PDB를 써야 일반 사용자 계정을 만들 수 있다. 아래와 같이 조치한다.
SQL> show CON_NAME
CON_NAME
------------------------------
CDB$ROOT
SQL> show PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
SQL> alter session set CONTAINER = XEPDB1;
Session altered.
SQL> CREATE USER igate IDENTIFIED BY "igate" DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp;
User created.
SQL> GRANT CREATE SESSION TO igate;
Grant succeeded.
SQL> GRANT CREATE TABLE, CREATE SEQUENCE, CREATE VIEW, CREATE PROCEDURE TO igate;
Grant succeeded.
SQL> GRANT UNLIMITED TABLESPACE TO igate;
Grant succeeded.
SQL>
Oracle XE 접속 방법
이제 오라클에 접속하여 작업을 수행할 수 있다.
jdbc:oracle:thin:@//localhost:1521/XEPDB1