はじめに
ORACLE MASTER Gold DBA 2019での学習のために、必要最低限の動作確認ができる環境構築を作成してみたのでご紹介します。
こちらの資料が大元になります。Gold DBA資格取得のための学習計画を詳細に記載していますのでよろしければご参照ください。
私は、Dockerで環境構築を行なったため今回はその方法をご紹介します。私がつまづいたポイントとともにご紹介を行いますので、初心者の方でもわかるように気をつけていますのでよろしければご参照ください。
前提事項
・Oracle環境をDockerを活用して構築する
・MacOS(Linux環境)で行う
・OracleGrid Infrastructureは考慮しない
・DBCAやDBUAの画面を使っての操作は、確認しない方針
・シングルインスタンスのマルチテナントコンテナデータベースを作成する
・バージョンはOracle Database 19c で作成する
準備する
macOS
Oracleのアカウント作成
Dockerのインストール
VSCodeのインストール(MACのターミナルでも操作は可能なため任意)
準備方法
Oracleのアカウント作成方法
Dockerのインストール
VSCodeのインストール
Windowsの環境構築との違い
Windows:インストール後、setup.exeで起動するだけで利用可能
Linux:インストール後、仮想環境を構築すると利用可能
・Windowsの環境構築方法
・MACの環境構築方法
macOSなどのLinux環境構築方法とWindowsの環境構築方法は違いがある。Linux環境では、Oracleからパッケージをダウンロードしただけでは、動作しないため、Dockerなどをインストールして環境構築する必要がある。
手順
1. 資料の1から6までを行う。
2. コマンドを実行する
1. 資料の1から6までを行う。
・資料
手順実行時の補足
・Docker Compose execでの確認
SQLPlusの操作のみの確認を行いたい場合は、資料の手順7の
docker compose exec db sqlplus SYSTEM/Oracle19@ORCLCDB
文を実行すれば確認可能。また、RMANの操作のみの確認を行いたい場合は、
docker compose exec db rman target SYS/Oracle19@ORCLCDB
分を実行すれば確認可能。
上記のコマンド実行後、コンテナを停止したい場合は、
exit
を実行すれば停止可能。
・Docker Compose execの制限
・デフォルトインストールで、上記のコマンドを利用すると、例えばデータベースの停止操作を行なった時に、再起動するためのローカル接続が、tnsnames.oraファイルに記載されていないため、実行できない(「Docker Compose exec」した状態で、tnsnames.oraファイルの編集などの操作方法が私にはできなかった)。そのため、このままだと、Gold資格の確認をする状態として適切ではないため、次の手順を実行して、任意の操作をできるようにする。
(私はこの解決方法を探すのにとても苦労しました)
2. コマンドを実行する
ディレクトリ「OracleDatabase/SingleInstance/dockerfiles/19.3.0」で、以下のコマンドを入力することで、「Docker Compose exec」していない状態で、コンテナの中身を確認することができる。
・コマンド
docker exec -ti dockerfiles-db-1 /bin/bash
初期は、「/home//oracle」配下に位置する。
入力の左側が、「bash-4.4$」になる。(今の状態はDockerを利用してOracleのパッケージを解凍した時のフォルダの中身をコマンド操作で見ているイメージ)
こちらも「exit」コマンドで戻ることが可能。
手順実行時の補足
・Docker Compose execを実行した時とのSQLPlusへのログイン方法の違い
手順2実行後、SYS権限でSQLPlusにログインするには以下のコマンドを実行する。
sqlplus SYS/Oracle19@ORCLCDB as SYSDBA
手順2を実行すると、資料の手順7の
docker compose exec db sqlplus SYSTEM/Oracle19@ORCLCDB
のような、「Docker Compose exec db」というコマンドを入力せずに、通常のOracleの文法を利用することができる
確認時に使用するコマンドの説明
上記で、環境構築方法については、完了です。ここからは、実際にデータベース内で、動作などの確認をする際に使用する操作について説明してきます。
※以下の実行時の確認等は、インストール後のデフォルトの操作になります。
・Oracle_BASEおよびOracle_HOMEのパス確認方法
以下のコマンドで確認可能。ORACLE_HOMEから、コマンド操作をして、高速リカバリ領域やリスナーなどのファイルの構成などを確認することができる。
ORACLE_BASEのディレクトリパスの確認
bash-4.4$ orabase
ORACLE_HOMEのディレクトリパスの確認
bash-4.4$ orabasehome
※ORACLE_BASE・ORACLE_HOMEの詳細については、「オラクルマスター教科書 Gold DBA Oracle Database Administration Ⅱ」の
「24-1-2 読取り専用Oracleホームのファイル配置」を確認してください。
・基本的なコマンドでの操作方法
・現在位置しているファイルパスの確認方法は、「pwd」コマンドを利用する
・指定ファイルへの移動方法は、「cd」コマンドを利用する。
・現在存在するディレクトリは以下のファイル構成をすべて確認するには、「ls」コマンドを利用する。
・指定ファイルの中身は「cat」コマンドを利用する。
・指定ファイルの編集は「vi」コマンドを利用する。
※「vi」コマンドの詳細の使用方法については、以下参照。
コマンド
ファイルパスの確認
bash-4.4$ pwd
ORACLE_HOMEのディレクトリに移動
bash-4.4$cd /opt/oracle/product/19c/dbhome_1
一つ上のディレクトリに移動
bash-4.4$cd ..
ORACLE_HOMEのディレクトリ配下のファイル構成を確認
bash-4.4$ls
ファイルの中身の確認
bash-4.4$cat