Oracle Databaseのインストール&作成とOracle Enterprise Mangerについて
さて、今回の連載もちょうど折り返し地点にやってきました。これまでずっとSQLの学習を続けてきましたが、Bronzeの資格を取得するためにはSQLの試験とは別に「Bronze DBA 12c(試験番号:1Z0-065-JPN)」試験にも合格する必要があります。Bronze DBA 12cの試験内容を簡単に説明すると、データベース管理者になるために必要な最低限の知識が問われる内容となっています。項目としてはOracle Databaseソフトウェアのインストールから始まり、DB作成や接続のためのネットワーク構成、インスタンス管理としてパラメータやメモリー・コンポーネントの知識、ユーザー作成、スキーマ管理、さらにはバックアップ・リカバリの内容など、幅広い知識が問われます。Bronzeだからと言って甘く見てかかると痛い目にあうな…… と思ってしっかりと準備をしていきましょう。第6回目はOracle Databaseのインストール(DB作成を含む)と、データベースを管理するツールであるOracle Enterprise Managerについて学んでいきましょう!
ソフトウェアのインストール
Oracle Databaseを使用するために、まずはソフトウェアのインストールが必要です。インストールについては、連載の第1回目にその手順を紹介しました。ただ第1回目では、まずSQL文に触れていただくために、比較的簡単なWindows版を取り上げましたが、実際のDBAの試験ではUnix/Linux版のソフトウェアのインストールに関する内容も出てきます。第1回目の内容も参考にしつつ、Windows版との違いについてもしっかりと押さえていきましょう。ではさっそく問題です。
OUI(Oracle Universal Installer)が実行できる内容として正しいものをすべて選択してください。
(a) ネットワーク接続の構成
(b) Oracle ソフトウェアのインストール
(c) ソフトウェアのインストールの際に必要なOSユーザーの作成
(d) ソフトウェアのインストール前の前提条件チェック
(e) 新規データベースの作成
Oracle Universal Installer(以下、OUI)はOracle製品をインストールすることができるGUIツールです。問題の解説に行く前に、OUIの起動方法がWindowsとUNIX/Linuxでは異なる点を押さえておきましょう。Windows版ではダウンロードしたファイルの展開時に作られるdatabaseフォルダ内にあるsetup.exeを実行しましたが UNIX/Linux版ではファイルを展開したのちに作成されたdatabaseディレクトリに移動し、ターミナルから以下のように実行します。
$ ./runInstaller
両者の違いについてとりあえず1つ押さえた上で、問題の解説にいきましょう。まずOUIでできることは以下になりますので、しっかりと押さえていきます。
- Oracleソフトウェアのインストール
- インストール前の前提条件チェック
- インストール済みのOracleソフトウェアの一覧表示
- Oracleソフトウェアのアンインストール
選択肢(a)のネットワーク接続は Net Managerや Net Configuration Assistant(NetCA)といったツールで構成するので誤りです。ネットワーク構成は、次回(第7回)で詳しく扱っていきます。(b)の選択肢はまさにOUIでできることなので正しいですね。選択肢(c)のソフトウェアのインストールを行うOSユーザーの作成は、OUI起動前に実施しなければいけない作業になります。ユーザー作成とそのユーザーが所属するグループの作成も必要になってきます。必要なグループについて以下で確認しておきましょう。
グループ名 | グループの役割 |
---|---|
dba | データベースの管理者権限グループ |
oinstall | ソフトウェアのインベントリ管理グループ |
作成するユーザーやグループ名は任意となっていますが、ユーザーは「oracle」グループ名は「dba」「oinstall」とするのが一般的です。ここについても、Windows版のインストール作業とは異なる点になりますね。インベントリについては次の問題で詳しく解説しましょう。
(d)の選択肢は正解です。OUIはインストールを開始する前に物理メモリーやディスク容量、OS側のパラメータに問題はないかなどのチェックを行ってくれます。第1回で扱った「Oracle Database 12c Release 1のインストールとDB作成」の前提条件チェックの画面も参照してください。選択肢(e)の新規データベースの作成は、 Database Configuration Assistant(DBCA)で行うのでこれは誤りです。しかしOUIでの作業を進めていくと以下の画面のように「データベースの作成および構成」という項目があるので、OUIでデータベースを作成できるのでは? と思った方もいたかもしれません。
ここで「データベースの作成および構成」を選択した場合、OUIでソフトのインストールが終わった後、Database Configuration Assistantツールが呼び出されてDB作成が行われます。OUI自身がDBを作成できるわけではありませんのでご注意ください。よって、正解は(b)と(d)になります。
もう1問インストールに関する問題をやりましょう。
orainstRoot.shとroot.shスクリプトの説明が正しくなるように適切な組み合わせを選択してください。
[説明]orainstRoot.shを実行すると( A )が作成されます。このファイルにはインベントリ・ディレクトリの場所と管理グループが記載されています。root.shを実行すると( B )の作成と、( C )の設定・変更を行えるスクリプトを、指定した場所にコピーします。
(a)A:oratabファイル B:oraInst.locファイル C:環境変数
(b)A:データファイル B:oraInst.locファイル C:ネットワーク構成ファイル
(c)A:oraInst.locファイル B:oratabファイル C:環境変数
(d)A:データファイル B:oratabファイル C:ネットワーク構成ファイル
(e)A:oraInst.locファイル B:oratabファイル C:データファイル
orainstRoot.shとroot.shは、UNIX/Linux環境でインストールした場合に実行するスクリプトになります。ソフトウェアのインストール終了時に、以下のような画面が出力されます。
これらのスクリプトは、OS管理者であるrootユーザーで実行する必要があることに注意してください。さて、この2つのスクリプトはいったい何者なのか? その機能については、以下の表をご確認ください。
スクリプト名 | 説明 |
---|---|
orainstRoot.sh | インベントリ情報を格納したディレクトリの場所と管理グループ情報を記載した oraInst.loc(インベントリ・ポインタファイル)を作成する |
root.sh | 環境変数を設定・変更するためのスクリプト、oraenv、coraenv、dbhomeを指定したディレクトリにコピーする。また oratabファイルを作成する |
まずorainstRoot.shの説明から見ていきましょう。インベントリ情報というのは、Oracleソフトウェアのバージョンやインストールした記録、適用されたパッチ番号といったOracle製品に関する様々な情報のことです。その情報を格納しているディレクトリの場所と管理グループを記したのがoraInst.locファイルとなります。orainstRoot.shを実行すると、Linux環境では/etc/oraInst.loc に作成されます。
inventory_loc=/u01/app/oraInventory inst_group=oinstall
root.shはOracle製品を使用するために必要な環境変数の設定・変更が行えるスクリプトをコピーします。デフォルトのコピー先は/usr/local/binになります。コピーされたスクリプトを実行すると、oratabファイル内の情報を使用して必要な環境変数を簡単に設定することができます。oratabファイルは、Linux環境では/etc/oratabに配置されます。
後は環境変数ですが、データベース操作などを行う際に必要になる環境変数として、以下のものを押さえてください。
環境変数 | 説明 |
---|---|
ORACLE_BASE | Oracle Flexible Architecture(OFA)(※1)を使用する場所を指定する |
ORACLE_HOME | Oracleソフトウェアのインストール場所を指定する。推奨はORACLE_BASEで指定したディレクトリ配下に設定する |
ORACLE_SID | Oracleのインスタンス名(システム識別子)を設定する |
LD_LIBRARY_PATH | Oracleが使用する共有ライブラリの場所を指定する(Unix/Linux限定) |
(※1)OFAとはOracleデータベース製品の管理を簡素化するために、ディレクトリ構造やファイルのネーミング規則などを示したガイドラインです。
さあ、ここまで確認できたらもう大丈夫! もう一度問題の選択肢を見てみましょう。2つのスクリプトが、データファイルやネットワーク構成ファイルとはまったく関係がないことがお分かりいただけたかと思います。残る選択肢は(a)と(c)になりますが、(a)の選択肢はAとBが逆転しているので誤りですね。よって、正解は(c)になります。
データベースの作成
インストールが完了したら、いよいよデータベースの作成です。データベースの作成はDatabase Configuration Assistant(以下、DBCA)を使用しますが、大切なのは、このツールでできることを把握しておくことです。問題を通して確認していきましょう。
Database Configuration Assistant(DBCA)でできることをすべて選択してください。
(a)データベースの削除
(b)データベースのバージョンアップ
(c)Enterprise Manager Database Expressの構成
(d)自動メモリー管理の有効化
(e)高速リカバリ領域の構成
(f)テンプレートの管理
ただ漠然と用語を暗記するのではなく、ぜひ実際にDBCAのツールを動かして学習してください! 用語だけ暗記してもすぐ忘れてしましますし、現場で役立つ知識として身につきません。
UNIX/Linuxでは、Oracle製品をインストールした場所(ORACLE_HOME)のbin以下にdbcaというモジュールがあるのでこれを実行します。dbcaを起動するとまず以下の画面が表示されます。
赤枠で囲んだ内容が、このツールでできる項目です。データベースの作成・削除、テンプレートの管理などが行えることがわかると思いますので、選択肢(a)と(f)は正解です。このように実際にツールを動かしながらできること、できないことを確認してください。
もう一点、参考としてDBCAのスクリーンショットを載せておきます。DB作成を進めていくと、以下のようにEnterprise Manager Database Expressに関する画面が出てきます。
Enterprise Manager Database Expressは、データベースを管理するツールの1つです。この後の問題で詳細を説明しますが、DBCA ツールで構成可能であることが分かるので選択肢(c)も正解ですね。他にも、Oracleが使用するメモリー・コンポーネントを自動管理にする(d)やバックアップ・リカバリに関連する高速リカバリ領域の設定の(e)もDBCAツールから設定可能項目なので正解です。これらも実際にツールを操作してしっかりと確認しておきましょう。残りの選択肢(b)のバージョンアップは、Database Upgrade Assistant(DBUA)という別のツールでの実行となるので誤りです。したがって正解は(a)、(c)、(d)、(e)、(f)になります。
管理ツール(Oracle Enterprise Manager)
それでは今回の最後の項目となるOracleの管理ツールについて確認していきましょう。管理ツールにはSQL*PlusやSQL Developer、Oracle Enterprise Manager がありますが、今回はOracle Enterprise Managerに絞って学習していきます。Oracle Enterprise Managerには以下の2種類があります。
- Enterprise Manager Cloud Control(以下、Cloud Control)
- Enterprise Manager Database Express(以下、EM Express)
Cloud Controlは、EM Expressではできない様々な操作が可能となっています。例えば、Cloud Controlを使用すると、EM Expressでは操作できないデータベースの起動・停止やジョブの管理、バックアップ・リカバリ、リソースの管理などに加え、複数データベースの管理も可能となります。ただ、Cloud ControlはBronze DBA 12cの試験範囲外なので、今回は詳しく扱いません。EM Expressに焦点をあてて学習してきましょう! まずはEM Expressを使用するための構成に関する問題です。
Oracle Enterprise Manager Database Expressを使用するために設定が必要なものについて正しいものを3つ選択してください。
(a)Enterprise Manager Database Express 専用ユーザーの作成
(b)管理エージェントのインストール
(c)監視対象のデータベースの起動
(d)初期化パラメータDISPATCHERSの設定(PROTCOL=TCPを含む)
(e)Enterprise Manager Database Expressが使用するHTTPSポートの設定
個々の選択肢を解説する前に、EM Express構成のイメージ図を確認してみましょう。
EM ExpressではWebベースのコンソール画面を使用してXML DBで使用可能な組込みWebサーバーと通信します。コンソールからの処理がリクエストされるとEM Expressサーブレットにより認証・セッション管理やリクエストに対する結果出力を行います。これらの処理は共有サーバープロセスで通信するためにDISPATCHERS初期化パラメータの構成が必要です。
また、EM ExpressはOracle Database内に構築されるWebベース管理ツールとなるため、監視対象のOracle Databaseが起動していないと使用することができません。さらにEM Expressが使用する専用のポート設定も必要になります。少し難しいように聞こえたかもしれませんが、EM Expressを使用するためには以下が必要であることを頭にいれておきましょう。
- リスナーの起動が必要
- ディスパッチャの構成が必要(DISPATCHERS初期化パラメータの設定)
- 共有サーバープロセスを使う
- 監視対象のデータベースが起動していること
- EX Express専用のポート設定が必要
リスナーやサーバープロセスなどの接続に関する内容については次回に詳しく解説しますので、とりあえず今回は「接続するのに必要な奴らがいるんだな……」くらいの理解でOKです(笑)。
さて、ではあらためて選択肢を見ていきましょう。選択肢(a)のようにEM Express専用のユーザーを作成する必要はありませんが、管理者ではないユーザーがEM Expressにアクセスするためには専用のロールの付与が必要です。ここであわせて覚えてしまいましょう。
ロール名 | 権限内容 |
---|---|
EM_EXPRESS_BASIC | EM Expressに接続して、読取り専用モードでページを表示できます |
EM_EXPRESS_ALL | EM Express に接続して、提供されるすべての機能を使用できます。EM_EXPRESS_ALLロールにはEM_EXPRESS_BASICロールが含まれます |
選択肢(b)の内容は、Cloud Controlの説明になるので誤りです。Cloud Controlでは監視対象のノードにエージェントをインストールすることで、複数ノードの監視が可能になります。選択肢(c)、(d)、(e)は、先の説明のように正しい内容となります。選択肢(e)のポート設定について補足しておきましょう。EM Express用のポートの設定や確認方法については専用のパッケージを使用します。以下の実行例を参考にしてください。
SQL> exec DBMS_XDB_CONFIG.setHTTPSPort(5500); PL/SQLプロシージャが正常に完了しました。
SQL> SELECT DBMS_XDB_CONFIG.getHTTPSPort FROM DUAL; GETHTTPSPORT ------------------------- 5500
実際に実機を使って確認しておきましょう!
それでは今回最後の問題です。EM Expressで操作できる内容を問う問題です。
Oracle Enterprise Manager Database Expressを使用して行えるタスクについて正しいものを選択してください。
(a)データベースの起動・停止
(b)ARCHIVELOGモードへの変更
(c)ユーザーの作成
(d)表領域の作成
(e)ロールの作成
(f)リスナーの起動・停止
(g)RMANの設定
(h)SQLチューニング・アドバイザの使用
選択肢が大量にあっても投げやりにならないように。先の問題にて、EM Expressを使用するためにはデータベースやリスナーの起動が必要であると説明しました。それを考慮すれば選択肢(a)や(f)のような操作はできないことが想像できるのではないかと思います。また選択肢(b)のARCHIVELOGモードへ変更するためには、データベースの再起動が必要になるのでこれもEM Expressからは操作できません。選択肢(c)、(d)、(e)の管理操作はEM Expressから実行可能です。RMAN(Recovery Manager)はバックアップ・リカバリに関するツールになりますが、EM Expressからは操作できません。最後のSQLチューニング・アドバイザのようなチューニングに関する操作は、EM Expressから操作可能なものがあります。したがって正解は(c)、(d)、(e)、(h)になります。
参考としてEM Expressの画面を載せておきますが、必ず実際にEM Expressにアクセスしてどのような操作が可能であるか、確認をしておくことが重要ですよ!
https://<ホスト名>:5500/em
今回はOracle製品のインストール、データベースの作成と管理ツールの1つであるEM Expressについて学習しました。次なるステップは、ネットワークに関する内容とインスタンス管理の学習です。ネットワークではデータベースへリモート接続する方法を学びます。せっかく構築したデーターベース・サーバーも、外部からのアクセスができなければ単なる箱ですから(笑)。またインスタンス管理では、パラメータ設定やメモリー・コンポーネントについて学んでいきます。
それではまた次回お会いしましょう~。
* OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- CoreOS&Docker環境においてOracle Database 11g Release 2をインストールするためのポイント
- Oracle Database 12c Release 1のインストールとDB作成
- [DBA] ネットワークとインスタンスの管理
- [DBA] バックアップおよびリカバリ
- デル・ソフトウェア、データベースレプリケーションソリューション「SharePlex 8.6」をリリース
- データベースの障害対策を考える
- PostgreSQLの適用範囲を考える 〜 管理・運用編
- 日本オラクル、クラウド環境に対応した運用管理ソリューションの最新版を発表
- データベースのパフォーマンス問題の傾向とチューニング
- データベースの災害対策を考える