ORACLE MASTER Bronze DBA講座(2)
はじめてのOracleインストールとデータベース作成
有限会社 G.F.インフィニティ (Project - ∞)2005/6/17
| Oracleデータベースエンジニアとしての実力を証明するORACLE MASTER資格。その入り口であるBronze資格の取得は難しくない。本連載と、同時掲載中の連載「Bronze SQL基礎I 講座」で合格を目指そう!(参考記事:「Oracle 10g対応のORACLE MASTERとは?」) |
前回「Oracleデータベース構造の基本」で、リレーショナルデータベースの基本を紹介しました。今回は、Oracleソフトウェアのインストールから学んでいきましょう。
| ORACLE MASTER Bronze DBA講座 各回のインデックス |
| 第1回 Oracleデータベース構造の基本 |
| 第2回 はじめてのOracleインストールとデータベース作成 |
| 第3回 Oracleデータベースの管理ツールを使う |
| 第4回 Oracleのネットワークを構成する |
| 第5回 Oracleインスタンスを管理する |
| 第6回 Oracleのデータベース記憶域を探る |
| 第7回 Oracleユーザーを管理する |
| 第8回 Oracleユーザーの権限とロール |
| 第9回 Oracleの表の作成とビューの利用 |
| 第10回 Oracleのスキーマオブジェクトを活用する |
| 第11回 Oracleのデータを復元する |
| 最終回 Oracleデータベースの自己診断と最適化 |
■理解しておきたいこと
1. 確認しておきたい内容
- Oracleソフトウェアのインストール
- データベースの作成
2. Oracleソフトウェアのインストール
Oracleソフトウェアをインストールするには、Oracle Universal Installer(OUI)を使用します。OUIでは、インストール時に前提条件を満たしているかどうかの自動チェック(ハードディスクの容量、メモリ容量など)を行います。そのため、インストール前に、プラットフォームごとに用意されているインストレーションガイドを確認しておきましょう。
UNIX環境の場合は、インストール中にrootユーザーにて、次の2つのスクリプトを実行する必要があります。事前にroot権限が取得できるようにしておいてください。
- oraInstRoot.sh: インベントリ(製品の詳細目録)の場所や所有グループのためのファイル作成
- root.sh: Oracleソフトウェアのシステムファイルの作成やリンクなど
|
|
Oracleソフトウェアをインストールする前に確認しておくべきことを2つ選択してください。
-
a. 100Mbpsのネットワークカードを準備する
b. 十分な物理メモリを準備する
c. Oracleモジュールをインストールするために必要なハードディスク容量を準備する
d. CD-ROMドライブを準備する
正解:b、c
|
Oracleソフトウェアは、一般的なソフトウェアと同じようにハードディスク上にソフトウェア(Oracleモジュールと呼ぶ)をインストール、起動して使用します。そのため、十分なハードディスク容量が必要です(正解c)。起動時には、共有メモリ内にOracleサーバで使用するメモリ(System Global Areaと呼ぶ)を割り当て、各種プロセス(バックグラウンドプロセスと呼ぶ)を起動します。これらのメモリとプロセスを総称して「Oracleインスタンス」と呼びます。Oracleインスタンスを起動するために十分なメモリも必要ですね(正解b)。Oracleインスタンスの管理に関しては、この先の連載第5回「Oracleインスタンスの管理」で紹介する予定です。
一般的にOracleサーバは、クライアント/サーバ形式か、アプリケーションサーバを中間層に配置した3階層などで使用されるためネットワークは必要ですが、選択肢aにあるような100Mbpsである必要はありません。10Mbpsでもギガビットネットワークでも稼働します。
選択肢dのCD-ROMは必須ではありません。事前にハードディスクにCD-ROM内のファイルをコピーしておいて、ハードディスク内からインストーラを起動することも可能です。
|
OSにLinuxを使用した環境において、OracleソフトウェアをインストールするときにOS管理者ユーザーにて実行する必要のあるスクリプトを2つ選択しなさい。
-
a. oraenv
b. coraenv
c. root.sh
d. oratab
e. oraInstRoot.sh
正解:c、e
|
Oracleソフトウェアをインストールするとき、UNIX系OSでは、インストール時にorainstRoot.shとroot.shの2つのファイルをrootユーザーにて実行します。
また関連ファイルとして、root.shで作成される「oratab」ファイルについても覚えておいてください。oratabファイルには、Oracleソフトウェアをインストールしたディレクトリ(ORACLE_HOME)と、使用するOracleインスタンスの名前(ORACLE_SID)が格納されます。このファイルは、dbstartとdbshutというシェルスクリプトにてOracleサーバを起動/停止するときに使用されます。
UNIX系のOSにOracleソフトウェアをインストールしたことがあれば、簡単に答えられる問題です。Windowsユーザーの方は、ファイル名とその内容について覚えておくようにしましょう。
3. Oracle環境に必要な環境変数
Oracleソフトウェアをインストールして使用するには、次の環境変数を設定します。
|
|
|
Oracleの環境変数と説明の組み合わせとして正しいものを2つ選択しなさい。
-
a. ORACLE_BASE:Optimal Flexible Architectureに基づくディレクトリ構造のルートディレクトリを指定
b. ORACLE_BASE:Oracleホームとなるディレクトリの指定
c. ORACLE_SID:Oracleインスタンス名
d. ORACLE_SID:グローバルデータベース名
e. ORACLE_HOME:OSユーザーoracleのホームディレクトリ
f. ORACLE_HOME:oraInventoryディレクトリの場所
正解:a、c
|
前回、宿題とした問題です。Oracleの環境変数は、環境を構築するうえでも重要ですので、正しく覚えておきましょう。正解aと正解cは、選択肢どおりですので、不正解となった理由を解説しましょう。
●選択肢b:ORACLE_BASEは、Oracleホームとなるディレクトリのベースとなるディレクトリを指定する環境変数です。正解aのとおり、OFAに従うためにも通常、ORACLE_BASEを決定しておきます。Oracleホームとなるディレクトリを指定するのは「ORACLE_HOME」です。
●選択肢d:ORACLE_SIDは、Oracleインスタンスの名前です。グローバルデータベース名は、Oracleリスナーで認識するサービス名です。Oracleデータベースの初期化パラメータ「service_names」で指定します。Oracleリスナーなどに関しては、この連載の先の第4回「ネットワーク環境の構成」で解説する予定です。
●選択肢e、選択肢f:ORACLE_HOMEは、Oracleソフトウェアをインストールするディレクトリです。選択肢eのOSユーザーのホームディレクトリを指定するのは、「HOME」ですね。また、選択肢fのoraInventoryディレクトリを指定する環境変数は特にありません。デフォルトでは、ORACLE_BASE環境変数で識別されるディレクトリ配下に「oraInventory」ディレクトリが作成されます。
4. Oracle環境に必要な環境変数
データベースの作成は、CREATE DATABASE文を使用するか、Database Configuration Assistant(DBCA)を使用します。DBCAでは、テンプレートを基に新規のデータベースを作成します。テンプレートには、次のタイプが用意されています。
|
「カスタム・データベース」テンプレート以外は、物理データベース構造のファイルを含んでいるため高速にデータベースを作成できますが、標準データブロックの変更などはできません。
また、既存データベースを元に新規のテンプレートを作成し、そのテンプレートから新規データベースを作成することで、既存データベースのクローンデータベースを高速に作成できます。
|
|
次の資料を確認してください。
Database Configuration Assistant(DBCA)を使用して新規にデータベースを作成しようとしたところ、資料にあるようにブロックサイズを選択できませんでした。この理由として適切なものを選択しなさい。
-
a. Oracle Universal Installer(OUI)にてインストールを行うときにしか、ブロックサイズの変更はできない
b. Grid Controlを使用することを選択していない
c. ファイル・システムを使用することを選択していない
d. カスタム・データベースを作成するテンプレートを選択していない
e. BLOCK_SIZE初期化パラメータが設定されていないため
正解:d
|
ウィザード形式でデータベースを作成するには、DBCAを使用します。DBCAでは、どのようなデータベースを作成するかはテンプレート次第となっています。データファイルも含められるテンプレートと、カスタムデータベースを作成するテンプレートがありますが、問題としているブロックサイズを含めたすべてのオプションを指示するのであれば、「カスタムデータベース」のテンプレートを使用する必要があります(正解d)。
選択肢aのOUIを使用したインストール時も、どのようなデータベースをインストールと同時に作成したいか指定できますが、ブロックサイズも含めて指定するのであれば、カスタムデータベースを選択してください。
選択肢bのGrid Controlを使用するかどうかは関係ありません。Grid Controlに関しては、次回の「Oracle Enterprise Manager Database ControlとSQL*Plusの使用」で解説します。
選択肢cのファイルシステムを使用するかどうかも関係ありません。Oracleデータベースを作成する場合に、ファイルシステムのほかにASM(Automatic Storage Management)というOracleサーバが管理するファイルシステムがあるのですが、カスタムデータベースであれば、どちらの場合でもブロックサイズを指定することができます。
選択肢eのBLOCK_SIZE初期化パラメータにて、Oracleデータベースのブロックサイズを指定できるのですが、この初期化パラメータを変更できるのは、カスタムデータベースを作成するときです。
|
Database Configuration Assistant(DBCA)のテンプレートと説明の組み合わせとして正しいものを2つ選択しなさい。
【テンプレート】
1. データ・ウェアハウス
2. トランザクション処理
3. 汎用
4. カスタム・データベース
【説明】
A. 最大の柔軟性を提供したデータベース
B. 多数のトランザクションを同時に実行する環境に適したデータベース
C. オールマイティなデータベース
D. 大量のデータに対する複雑な問い合わせを実行する環境に適したデータベース
-
a. 1-D
b. 3-A
c. 2-C
d. 4-C
e. 2-B
f. 1-A
正解:a、e
|
この問題の正しい組み合わせは次のようになります。
1-D、2-B、3-C、4-A
トランザクション処理(OLTP)とデータウェアハウスの違いなどは正しく理解しておくようにしましょう。
|
クローンデータベースを作成することになりました。そのマシンで最も高速にクローンデータベースを作成するにはどうしたらよいでしょうか。
-
a. Database Configuration Assistant(DBCA)にて「汎用」データベースのテンプレートを元にデータベースをカスタマイズしてSQLスクリプトを作成し、そのSQLスクリプトを実行してデータベース作成する
b. Database Configuration Assistant(DBCA)にて「カスタム・データベース」を使用して、現在のデータベースと同じパラメータを設定し、作成する
c. Database Configuration Assistant(DBCA)にて現在のデータベースをテンプレート化し、そのシード・データベースを使用してデータベースを作成する
d. 現在のデータベースを作成したときのSQLスクリプトを使用する
正解:c
|
DBCAでは、データベースを新規作成するだけでなく、既存のデータベースをテンプレート化することもできます。正解cのとおり、DBCAにて既存のデータベースをテンプレート化して、そのテンプレートを使用して新規データベースを作成すれば、簡単にデータベースのコピー(クローン)が作成できます。このようなデータファイルも含まれたテンプレートのことを「シードデータベース」と呼びます。
選択肢aの「汎用」テンプレートもシードデータベースのため、CREATE DATABASE文を使用して新規データベースを作成するスクリプト化はできません。SQLスクリプトを作成するのであれば、「カスタムデータベース」を使用します。そうなると、選択肢bは流れとして間違っているわけではないのですが、現在のデータベースのコピーにはなりません。なぜなら、現在のデータベースに含まれているオブジェクトはコピーできないからです。同じことがいえるのが、選択肢dで、SQLスクリプトを使用してデータベースを作成すると、データベース作成直後の状態にはなりますが、既存のオブジェクトのコピーなどは別作業になってしまいます。
■まとめ
次の内容をチェックしておきましょう。
- Oracleデータベースをインストールするために必要なリソース
- Oracleソフトウェアをインストールするときに実行するスクリプト(oraInstRoot.shとroot.sh)
- Oracleデータベースに関する環境変数(ORACLE_SID、ORACLE_BASE、ORACLE_HOMEなど)
- DBCAの各種テンプレートの特徴について
■宿題
次回は、「3. Oracle Enterprise Manager Database ControlとSQL*Plusの使用」を確認します。次の宿題を解いておいてください。
|
ホスト名がmyhost、ドメイン名がdomainのマシンにインストールされたOracleデータベースに、デフォルトのポートを使用してEnterprise Manager Database ControlへアクセスしているURLを選択しなさい。
-
a. http://myhost.domain:5500
b. http://myhost.domain:1521/em
c. http://myhost.domain:5500/em
d. http://myhost.domain/em
| IT資格試験の模擬問題をWebベースで学習できる@IT自分戦略研究所の新サービス「@IT資格攻略」では、Oracle関連の資格をテーマとして取り上げています。Bronze SQL 基礎 I、Bronze DBA 10gも近日中に追加予定です。「無料お試し版」もありますので、記事と併せてご覧ください。 |
ORACLE MASTER Bronze DBA講座 バックナンバー
|
|
| スキルアップに役立つ問題を無料で出題 | |
| ITスキル研修4000件、最新情報の検索できます |
キャリアアップ
スポンサーからのお知らせ
・ケ・ュ・チマツ、クヲオ貍シ・ケ・ン・・オ。シ
- - PR -

点数に応じてレベル認定、PHP技術者認定上級試験が開始へ