0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ORACLE MASTER Gold DBAの学習用のDB環境構築方法

Last updated at Posted at 2024-07-16

はじめに

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

・実行結果
スクリーンショット 2024-07-16 8.03.05.png

初期は、「/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ホームのファイル配置」を確認してください。

・デフォルトの実行時
スクリーンショット 2024-07-16 8.26.49.png

・基本的なコマンドでの操作方法

・現在位置しているファイルパスの確認方法は、「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

ユースケース

例1
ORACLE_HOMEに移動して、ディレクトリ配下のファイル構成を確認
スクリーンショット 2024-07-16 8.34.47.png

例2
ORACLE_HOMEから一つ上のディレクトリに移動
スクリーンショット 2024-07-16 8.47.18.png

例3
ORACLE_HOMEからtnsnames.oraファイルが配置されているディレクトリに移動して中身を確認
スクリーンショット 2024-07-16 8.52.09.png

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?