Macでは、Oracleのインストーラが存在しないため、DockerでOracleを構築します。
DBeaverを使用した接続例もまとめています。
OracleのDockerイメージの作成
-
GitHubからoracle/docker-imagesをクローンします。
[https://github.com/oracle/docker-images] -
クローンが完了すると、docker-imagesというフォルダが作成されます。
-
Oracle Databaseソフトウェアをダウンロードするために、以下にアクセスします。
[https://www.oracle.com/technetwork/jp/database/enterprise-edition/downloads/index.html] -
「LINUX.X64_180000_db_home.zip」がダウンロードされるため、ダウンロード完了したら、ファイルを以下のパスに移動します。
./docker-images/OracleDatabase/SingleInstance/dockerfiles/18.3.0
6 ./docker-images/OracleDatabase/SingleInstance/dockerfilesにある「buildDockerImage.sh」を実行します。
./buildDockerImage.sh -v 18.3.0 -e -i
7. 実行完了後、docker imagesコマンドを実行し、以下のイメージが作成されていることを確認します。
8. ./docker-images/OracleDatabase/SingleInstance/dockerfilesに「oracle.env」を作成します。
ここでは、日本語環境となるような環境変数を設定します。
また、SID=ORCL, PDB=MYORCL, PWD=oracleとしています。
TZ=Asia/Tokyo
ORACLE_SID=ORCL
ORACLE_PDB=MYORCL
ORACLE_PWD=oracle
ORACLE_CHARACTERSET=AL32UTF8
NLS_LANG=Japanese_Japan.AL32UTF8
9. ./docker-images/OracleDatabase/SingleInstance/dockerfilesにカレントディレクトリを移動し、以下のコマンドを実行します。
docker run -d --env-file ./oracle.env -p 1521:1521 -p 5500:5500 -it --name my_oracle oracle/database:18.3.0-ee
10. 以下のキーワードが表示されれば、実行完了です。
#########################
DATABASE IS READY TO USE!
#########################
ユーザー作成
- パスワードを変更する際は、以下のコマンドを実行します(任意)
docker exec <container name> ./setPassword.sh <your password>
2. コンテナの中に入ります。
docker exec -it <container name> bash
3. sqlplusでMYORCLにログインします。(sysユーザー)
sqlplus sys/oracle@//localhost:1521/MYORCL as sysdba
4. ユーザーを作成します。
CREATE USER scott IDENTIFIED BY tiger DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA 10M ON users;
GRANT create session, create table TO scott;
5. sqlplusから抜けます。
quit
テーブル作成とINSERT, SELECT確認
- 作成したユーザーでログインします。
sqlplus scott/tiger@//localhost:1521/MYORCL
2. 任意のテーブルを作成します。
CREATE TABLE employee (
id NUMBER,
name VARCHAR2(45) NOT NULL,
primary key( id )
);
3. INSERTできることを確認します。
INSERT INTO employee VALUES(1, 'user1');
INSERT INTO employee VALUES(2, 'ユーザー2');
4. SELECTできることを確認します。
SELECT * from employee;
その他
Oracle Enterprise Managerにアクセスしてみる
- https://localhost:5500/em/にブラウザからアクセスすると、画面が表示されるため、以下の設定でログインします。
項目 | 値 |
---|---|
ユーザー名 | sys |
パスワード | oracle |
コンテナ名 | 空 |
SYSDBA権限 | チェックを入れる |
DBeaverを使用して、DBに接続してみる
-
jdbcドライバをダウンロードします。
[https://www.oracle.com/technetwork/database/application-development/jdbc/downloads/jdbc-ucp-183-5013470.html]
-
接続設定を入力して、終了を押下します。
項目 | 値 |
---|---|
Host | localhost |
Database | MYORCL |
User name | scott |
Password | tiger |