[도커] MacOS에서 도커를 통한 오라클 11g 설치 및 오라클 SQL 디벨로퍼(Oracle SQL Developer) 연결

현재 오라클에서는 오라클 데이터베이스를 MacOS 운영체제에 직접 설치하여 사용할 수 있는 방법을 지원하지 않습니다. 따라서 가상 머신이나 컨테이너 기반 도커(Docker)를 사용하는 방법을 사용하면 됩니다.

보다 빠르고 간편한 방법인 도커를 사용하여 오라클 데이터베이스 서비스를 설치하고 SQL 쿼리 작성 및 실행을 위한 클라이언트인 오라클 SQL 디벨로퍼(Oracle SQL Developer)와 연결해보겠습니다.

1. 도커 설치 후 도커 CLI에 접속


2. 도커 이미지 검색 및 다운로드

도커 이미지 검색

docker search oracle-xe-11g
NAME                                DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
oracleinanutshell/oracle-xe-11g                                                     131                  
wnameless/oracle-xe-11g-r2          Oracle Express Edition 11g Release 2 on Ubun…   50                   
orangehrm/oracle-xe-11g              docker container with Oracle Express Editio…   14                   [OK]
christophesurmont/oracle-xe-11g     Clone of the wnameless/oracle-xe-11g.           6                    
ukhomeofficedigital/oracle-xe-11g   Oracle Database Express Edition 11g Container   4                    [OK]
thebookpeople/oracle-xe-11g                                                         3                    
jaspeen/oracle-xe-11g               Fork from sath89/docker-oracle-xe-11g - smal…   3                    [OK]

wnameless/oracle-xe-11g-r2 이미지를 다운로드해보겠습니다.

Oracle Express Edition 11g Release 2 on Ubuntu 18.04 LTS 이미지입니다.

도커 이미지 다운로드

docker pull wnameless/oracle-xe-11g-r2
Using default tag: latest
latest: Pulling from wnameless/oracle-xe-11g-r2
5667fdb72017: Pull complete 
d83811f270d5: Pull complete 
ee671aafb583: Pull complete 
7fc152dfb3a6: Pull complete 
51896e240a72: Pull complete 
64e16b57ee0a: Pull complete 
Digest: sha256:e8cfa3733a2c11b415fb94a9632424025d69165fb4903a22206f6073be30eeb9
Status: Downloaded newer image for wnameless/oracle-xe-11g-r2:latest
docker.io/wnameless/oracle-xe-11g-r2:latest

도커 이미지 확인

docker images
REPOSITORY                   TAG       IMAGE ID       CREATED         SIZE
wnameless/oracle-xe-11g-r2   latest    0d19fd2e072e   15 months ago   2.1GB

wnameless/oracle-xe-11g-r2 이미지의 경우 도커 허브에서 실행에 대한 설명을 볼 수 있으며 Docker Hub

깃헙 리포지토리 주소도 공유되어 있습니다. GitHub - wnameless/docker-oracle-xe-11g: Dockerfile of Oracle Database Express Edition 11g Release 2


3. 컨테이너 실행

다운로드 한 이미지를 사용하여 컨테이너를 실행하기 위해 docker run 명령어를 사용합니다.

1521 포트로 컨테이너를 실행하며 이때 --name 옵션으로 컨테이너 이름을 지정합니다.

도커 컨테이너 실행

docker run --name oracle-xe-11g-r2 -d -p 49161:1521 wnameless/oracle-xe-11g-r2

도커 컨테이너 목록 확인

docker ps
CONTAINER ID   IMAGE                        COMMAND                  CREATED         STATUS         PORTS                                       NAMES
707defb0daba   wnameless/oracle-xe-11g-r2   "/bin/sh -c '/usr/sb…"   5 seconds ago   Up 4 seconds   22/tcp, 8080/tcp, 0.0.0.0:49161->1521/tcp   oracle-xe-11g-r2

컨테이너 내 리눅스 환경에서 bash 셸에 접속하기 위해서는 docker exec 명령어를 실행합니다.

도커 컨테이너에서 명령어 실행

docker exec -it oracle-xe-11g-r2 /bin/sh
#

이제 오라클 데이터베이스에 접속하기 위해 다음 명령을 실행합니다.

# su - oracle
oracle@a7b919d06019:~$ 

마지막으로 SQL Plus를 실행하기 위해 다음 명령을 실행합니다.

sqlplus '/as sysdba'
SQL*Plus: Release 11.2.0.2.0 Production on Thu Dec 24 07:37:17 2020

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

SQL> 


4. SQL 디벨로퍼 설치 및 데이터베이스 연결 후 접속

https://www.oracle.com/tools/downloads/sqldev-downloads.html

MacOS 용 파일을 다운로드 한 후(계정 로그인 필요) 압축을 풀고 실행합니다.

만약 SQLDeveloper’은(는) Apple에서 악성 소프트웨어가 있는지 확인할 수 없기 때문에 열 수 없습니다.라는 메시지가 출력되면. Finder에서 Control 키를 누른 상태에서 우클릭하여 ‘열기’를 클릭하여 실행합니다.

좌측 Connections 탭의 + 버튼을 누릅니다.

다음 정보로 연결 정보를 입력합니다.

hostname: localhost
port: 49161
sid: xe
username: system
password: oracle

연결 확인을 위해 Test 버튼을 클릭합니다.

이 때 Local not recognized 오류가 발생할 경우 다음 방법으로 해결할 수 있습니다.


SQL 디벨로퍼 프로그램 종료 후 관련 정보를 추가하기 위해 실행 파일을 우클릭하여 패키지 내용 보기를 클릭합니다.

다음 경로

SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin

sqldeveloper.conf 파일을 텍스트 편집기로 열어 다음 옵션을 추가합니다.

AddVMOption -Duser.language=ko
AddVMOption -Duser.country=KR

SQL 디벨로퍼 프로그램을 다시 실행한 후 접속 정보를 입력하고 테스트 버튼을 클릭합니다.

연결이 정상적으로 되었다면 상태:성공 메시지가 출력됩니다!

접속 버튼을 클릭하면 도커 컨테이너가 제공하는 오라클 데이터베이스에 접속할 수 있습니다.

Comments