LoginSignup
4
1

More than 1 year has passed since last update.

macOS × DockerでOracle Database 21cを使う(CUI, GUI)

Last updated at Posted at 2022-04-11

📖 参考

macOSにDockerでOracle Database 19c(Linux x86-64)をインストール
macでOracleDBを使うために整えた時の記録(OraceDB, DBearver, Docker,Sql*Plus, Mac)
Oracle Database 19c 環境をDockerで作成してSQL Developerで接続する

Docker Desktop for Macのインストール

Docker の入手からDocker.dmgをダウンロード・インストール

参考(クリックで画像を表示)

image.png

Oracle Database 21cのダウンロード

Oracle公式からOracle Database 21c(.zip)をダウンロード

参考(クリックで画像を表示)

image.png

Oracle DatabaseのDockerコンテナをビルド

① 保存先ディレクトリでDockerイメージ(docker-imagesフォルダ)をダウンロード

# Dockerイメージのダウンロード先ディレクトリ(任意の場所)に移動してから実行
% git clone https://github.com/oracle/docker-images.git
Cloning into 'docker-images'...
remote: Enumerating objects: 15474, done.
..(中略)..
Resolving deltas: 100% (9090/9090), done.

Oracle Database 21c(.zip)をdockerfiles/21.3.0フォルダに移動

参考(クリックで画像を表示)

image.png

buildContainerImage.shを実行

# dockerfilesディレクトリに移動
% cd docker-images/OracleDatabase/SingleInstance/dockerfiles

# buildContainerImage.shの実行
dockerfiles % ./buildContainerImage.sh -v 21.3.0 -e -i
Checking Docker version.
Ignored MD5 checksum.
..(中略)..
  Oracle Database container image for 'ee' version 21.3.0 is ready to be extended: 
    
    --> oracle/database:21.3.0-ee

  Build completed in 225 seconds.

Oracle Database 21cのDockerコンテナがビルドされていることを確認

# Dockerイメージの確認
% docker images
REPOSITORY        TAG         IMAGE ID       CREATED          SIZE
oracle/database   21.3.0-ee   d44e943b0d0d   39 seconds ago   7.93GB

⑤ Dockerコンテナ(Oracle Database 21c)のセットアップ

参考: 公式リポジトリ(Oracle/docker-images)
参考: Introduction to Multitenant Administration

# Dockerコンテナの作成・起動
# パラメータ:
# --name: Dockerコンテナ名
# -p: Oracle Listenerのホスト側ポート(1521), OEM Expressのホスト側ポート(5500)
# -e ORACLE_PWD: SYS/SYSTEM/PDB_ADMINのパスワード
# パラメータを指定しない場合、SIDは"ORCLCDB", PDBは"ORCLPDB1"が割り当てられる
% docker run --name docker_oracle \
-p 1521:1521 -p 5500:5500 \
-e ORACLE_PWD=oracle21c \
oracle/database:21.3.0-ee

ORACLE EDITION: ENTERPRISE

LSNRCTL for Linux: Version 21.0.0.0.0 - Production on 11-APR-2022 15:41:14
..(中略)..
ALTER PLUGGABLE DATABASE ORCLPDB1 SAVE STATE
Completed: ALTER PLUGGABLE DATABASE ORCLPDB1 SAVE STATE

⑥ Dockerコンテナの確認

Docker Desktop for Macで、作成したDockerコンテナのステータスがRUNNINGになっていることを確認し、一旦STOPして再度STARTする。

参考(クリックで画像を表示)

1 - ステータスがRUNNINGであることを確認

image.png

2 - Docker Desktop for Mac上でSTOP

image.png

3 - Docker Desktop for Mac上でSTART

image.png

# Dockerコンテナの確認
% docker container ls
CONTAINER ID   IMAGE                       COMMAND                  CREATED          STATUS                        PORTS                                            NAMES
4ec97d965fd0   oracle/database:21.3.0-ee   "/bin/sh -c 'exec $O…"   14 minutes ago   Up About a minute (healthy)   0.0.0.0:1521->1521/tcp, 0.0.0.0:5500->5500/tcp   docker_oracle

CLIによるOracle Databaseへの接続

DockerコンテナがRUNNINGになっている状態で、CLIボタンをクリックする。

参考(クリックで画像を表示)

image.png

表示されたターミナルで、SQL*Plusを用いてDBにアクセスする。

 # SQL*PLUSの起動・ログイン
 # sqlplus "ユーザ名"/"パスワード"@"SID"
sh-4.2$ sqlplus SYSTEM/oracle21c@ORCLCDB
SQL*Plus: Release 21.0.0.0.0 - Production on Mon Apr 11 16:04:32 2022
Version 21.3.0.0.0
..(中略)..
SQL> 

(DBeaverを用いた)GUIによるOracle Databaseへの接続

参考: DBeaver Community

DBeaver公式サイトからDBeaver(Community Edition)をダウンロード・インストール

参考(クリックで画像を表示)

image.png

DBeaverを起動し、左上の接続ボタンからOracleを選択

参考(クリックで画像を表示)

image.png

Oracle接続設定一般タブで接続情報を以下のように入力

「CLIによるOracle Databaseへの接続」で入力したコマンド
 # SQL*PLUSの起動・ログイン
 # sqlplus "ユーザ名"/"パスワード"@"SID"
sh-4.2$ sqlplus SYSTEM/oracle21c@ORCLCDB
項目 概要 値(例)
Database SID ORCLCDB
ユーザ名 ユーザ名 SYSTEM
パスワード パスワード oracle21c
参考(クリックで画像を表示)

image.png

Oracle公式からOracle DatabaseのJDBCドライバ(ojdbc11-full.tar.gz)をダウンロード

参考(クリックで画像を表示)

image.png

Oracle接続設定一般タブでドライバの設定を編集をクリックし、ライブラリタブから現在の依存ライブラリを全て削除

参考(クリックで画像を表示)

image.png

フォルダーを追加(D)から、④でダウンロードした解凍済フォルダを指定

参考(クリックで画像を表示)

image.png

テスト接続(T)...をクリックし、データベースに正常に接続できることを確認

参考(クリックで画像を表示)

image.png

image.png

終了(F)をクリックし、DBに接続できていることを確認

参考(クリックで画像を表示)

image.png

image.png

Oracle Database 21c対応のmacOS版SQL*Plusはまだリリースされていないため、Oracle Database 21cに対してGUIでPL/SQLを使う際はOracle公式のSQL Developerを使いましょう。
(2022/4/18 現在)

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1