ヘッダーをスキップ
Oracle® Databaseサンプル・スキーマ
11g リリース2 (11.2)
B89927-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

2 インストール

Oracle Databaseの完全インストールを実行すると、自動的にサンプル・スキーマをシード・データベースにインストールできます。シード・データベースをシステムから削除した場合は、サンプル・スキーマを再インストールしてから、Oracleマニュアルおよび研修資料内の例で示されている手順を実行する必要があります。

この章では、サンプル・スキーマをインストールする方法について説明します。この章は次の項で構成されています。

Database Configuration Assistantの使用

Oracle Universal Installerを使用してOracle Databaseをインストールする場合、基本インストール・オプションを選択すると、サンプル・スキーマはデフォルトでインストールされます。サンプル・スキーマ・オプションを選択すると、5つのスキーマ(HR、OE、PM、IX、SH)すべてがデータベースにインストールされます。インストール時にサンプル・スキーマをインストールしなかった場合は、「サンプル・スキーマの手動インストール」の手順に従って、後で追加することができます。

インストール処理の最後に、作成されたアカウントとそのロック状態を示すダイアログ・ボックスが表示されます。デフォルトでは、すべてのサンプル・スキーマがロックされ、パスワードは期限切れになります。ロックされたアカウントを使用するには、アカウントのロックを解除し、パスワードをリセットする必要があります。インストール処理のこの時点で、アカウントのロックを解除できます。また、インストールの完了後に、ALTER USER ... ACCOUNT UNLOCK文を使用してスキーマのロックを解除し、パスワードをリセットすることもできます。次に例を示します。

ALTER USER hr ACCOUNT UNLOCK IDENTIFIED BY Password;

関連項目:

セキュアなパスワードの作成に関するガイドラインについては、『Oracle Databaseセキュリティ・ガイド』のパスワードを保護するためのガイドラインに関する項を参照してください。

使用可能なサンプル・スキーマは、インストールしたOracle Databaseのエディションとその構成によって異なります。次の表を参照してください。

スキーマ Oracle Database Personal Edition Oracle Database Standard Edition Oracle Database Enterprise Edition
HR 使用可能 使用可能 使用可能
OE 使用可能 使用可能 使用可能
PM 使用可能 使用可能 使用可能
IX 使用可能 使用可能 使用可能
SH 使用不能 使用不能 Partitioning Optionのインストールが必要

サンプル・スキーマの手動インストール

DBCAを使用した初期のデータベース・インストール時にサンプル・スキーマをインストールしない場合、SQLスクリプトを実行して手動でサンプル・スキーマを作成することもできます。Oracle Database Examples(メディア・キットに含まれるCompanion CD)をインストールして、これらのスクリプトを$ORACLE_HOMEにあるdemoディレクトリに含めます。


関連項目:

ダウンロードおよびインストールについては、『Oracle Database Examplesインストレーション・ガイド』を参照してください。

スキーマ依存性

スキーマ間には、様々な依存性が確立しています。そのため、スキーマを手動で作成する場合は、HROEPMIXSHの順に作成する必要があります。

次の順序でスキーマを作成します。

  1. HRスキーマを作成します。

  2. OEスキーマを作成します。HRオブジェクト権限をOEに付与するには、HRスキーマがすでに存在していて、HRスキーマ用のパスワードを知っている必要があります。HR表の中には、プライベート・シノニムを使用することでOEユーザーが参照できるものもあります。また、OE表の中には、HR表に対する外部キー関係を持つものもあります。

  3. PMスキーマを作成します。外部キー関係では、PMスキーマの作成時にOEスキーマがすでに存在していることが必要です。これらの外部キーを設定して使用する権限をPMに付与するには、OE用のパスワードを知っている必要があります。


    注意:

    PMスキーマでは、データベースがJava Virtual Machine(Java VM)およびinterMediaで使用できることが必要です。これは、インストール中またはDBCAの使用後に可能になります。

  4. IXスキーマを作成します。情報交換スキーマであるIXは、OE内の受注データに基づいています。また、外部キー関係では、IXスキーマの作成時にOEスキーマがすでに存在していることが必要です。外部キーを設定して使用する権限をIXに付与するには、OE用のパスワードを知っている必要があります。

  5. SHスキーマを作成します。他の4つのスキーマを作成しなくても、このスキーマを作成できますが、SHスキーマは論理的にOEスキーマに依存しています。

サンプル・スキーマのインストールのガイドライン

サンプル・スキーマのインストールに必要なすべてのスクリプトは、$ORACLE_HOME/demo/schemaディレクトリにあります。これらのスクリプトを実行してサンプル・スキーマをインストールする前に、次のガイドラインに従ってください。

  1. SYSDBA権限を使用してシステム管理者として接続する必要があります。

  2. スキーマのパスワードを入力するように求められたら、『Oracle Databaseセキュリティ・ガイド』で説明している要件を満たすセキュアなパスワードを入力してください。

  3. スクリプトの実行中に表領域名の入力を求めるプロンプトが表示された場合、次の手順を実行します。

    • 適切な表領域名を入力します。たとえば、スキーマのデフォルトの表領域としてusersと入力します。

    • スキーマの一時表領域としてtempと入力します。

  4. ログ・ディレクトリ名の入力を求めるプロンプトが表示された場合は、$ORACLE_HOME/demo/schema/log/または他の既存のディレクトリ名を入力します。


注意:

ログ・ディレクトリ名の末尾がスラッシュで終了していることを確認します。たとえば、$ORACLE_HOME/demo/schema/log/などです。

HRスキーマのインストール

Human Resource(HR)スキーマの作成に必要なすべてのスクリプトは、$ORACLE_HOME/demo/schema/human_resourcesにあります。

すべてのオブジェクトの作成およびデータのロードに必要なスクリプトは、hr_main.sqlのみです。次の手順では、インストール・プロセスの概要を示します。

  1. SYSでSQL*Plusにログインし、AS SYSDBA権限を使用して接続します。

    sqlplus connect sys as sysdba
    Enter password: password
    
  2. hr_main.sqlスクリプトを実行するには、次のコマンドを使用します。

    SQL> @?/demo/schema/human_resources/hr_main.sql
    
  3. HRのセキュアなパスワードを入力します。

    specify password for HR as parameter 1:
    Enter value for 1:
    

    関連項目:

    パスワードの最小要件については、『Oracle Databaseセキュリティ・ガイド』を参照してください。

  4. 適切な表領域を入力します。たとえば、HRのデフォルトの表領域としてusersと入力します。

    specify default tablespace for HR as parameter 2:
    Enter value for 2:
    
  5. HRの一時表領域としてtempと入力します。

    specify temporary tablespace for HR as parameter 3:
    Enter value for 3:
    
  6. SYSのパスワードを入力します。

    specify password for SYS as parameter 4:
    Enter value for 4:
    
  7. ログ・ディレクトリのディレクトリ・パスを入力します。たとえば、$ORACLE_HOME/demo/schema/log/などです。

    specify log path as parameter 5:
    Enter value for 5:
    

hr_main.sqlスクリプトが正常に実行され、HRスキーマがインストールされた後で、ユーザーHRとして接続されます。スキーマが作成されたことを確認するには、次のコマンドを使用します。

SQL> SELECT       table_name FROM user_tables;

hr_main.sqlを実行すると、次の作業が実行されます。

  1. インストール済のHRスキーマがすべて削除されます。

  2. ユーザーHRを作成して、必要な権限を付与します。

  3. HRとして接続します。

  4. スキーマ・オブジェクトを作成して移入するスクリプトを実行します。

スクリプトとその機能の一覧については、表5-1を参照してください。

スキーマの拡張機能として、オプションでhr_dn_c.sqlおよびhr_dn_d.sqlの2つのスクリプトが提供されています。HRスキーマでOracle Internet Directoryのディレクトリ機能を使用できるようにするには、hr_dn_c.sqlスクリプトを実行します。HRスキーマの初期設定に戻る場合は、hr_dn_d.sqlスクリプトを使用してhr_dn_c.sqlスクリプトの結果を元に戻します。

hr_drop.sqlスクリプトを使用して、HRスキーマを削除します。

OEスキーマとそのOCサブスキーマのインストール

Order Entry(OE)スキーマおよびそのOnline Catalog(OC)サブスキーマの作成に必要なすべてのスクリプトは、$ORACLE_HOME/demo/schema/order_entryにあります。


関連項目:

oe_main.sqlを実行する前に、「サンプル・スキーマのインストールのガイドライン」を参照してください。

すべてのオブジェクトの作成およびデータのロードに必要なスクリプトは、oe_main.sqlのみです。oe_main.sqlを実行すると、次の作業が実行されます。

  1. インストール済のOEスキーマがすべて削除されます。

  2. ユーザーOEを作成して、必要な権限を付与します。

  3. OEとして接続します。

  4. スキーマ・オブジェクトを作成して移入するスクリプトを実行します。

oe_main.sqlスクリプトが正常に実行され、OEスキーマがインストールされた後で、ユーザーOEとして接続されます。スキーマが作成されたことを確認するには、次のコマンドを使用します。

SQL> SELECT table_name FROM user_tables;

スクリプトとその機能の一覧については、表5-10を参照してください。

oe_drop.sqlおよびoc_drop.sqlスクリプトは、それぞれOEスキーマおよびOCサブスキーマの削除に使用します。

PMスキーマのインストール

Product Media(PM)スキーマの作成に必要なすべてのスクリプトは、$ORACLE_HOME/demo/schema/product_mediaにあります。


関連項目:

pm_main.sqlを実行する前に、「サンプル・スキーマのインストールのガイドライン」を参照してください。

すべてのオブジェクトの作成およびデータのロードに必要なスクリプトは、pm_main.sqlのみです。pm_main.sqlを実行すると、次の作業が実行されます。

  1. パスワード、スクリプト内で使用する表領域名、およびデータ・ファイルとログ・ファイルのディレクトリの入力を求めるプロンプトが表示されます。

  2. インストール済のPMスキーマがすべて削除されます。

  3. ユーザーPMを作成して、必要な権限を付与します。

  4. PMとして接続します。

  5. スキーマ・オブジェクトを作成して移入するスクリプトを実行します。

pm_main.sqlスクリプトが正常に実行され、PMスキーマがインストールされた後で、ユーザーPMとして接続されます。スキーマが作成されたことを確認するには、次のコマンドを使用します。

SQL> SELECT table_name FROM user_tables;

スクリプトとその機能の一覧については、表5-19を参照してください。

pm_drop.sqlスクリプトは、PMスキーマの削除に使用します。


注意:

SQL*Loaderのデータ・ファイルpm_p_lob.datでは、インストール中に設定された絶対パス名がハードコードされています。データを異なる環境にロードする場合は、最初にこのファイル内のパス名を編集する必要があります。

IXスキーマのインストール

Information Exchange (IX)スキーマの作成に必要なすべてのスクリプトは、$ORACLE_HOME/demo/schema/info_exchangeにあります。


関連項目:

ix_main.sqlを実行する前に、「サンプル・スキーマのインストールのガイドライン」を参照してください。

Information Exchange(IX)スキーマのインストールでは、すべてのオブジェクトの作成およびデータのロードに必要なスクリプトは、ix_main.sqlのみです。

ix_main.sqlを実行すると、次の作業が実行されます。

  1. パスワード、およびスクリプト内で使用する表領域名の入力を求めるプロンプトが表示されます。

  2. インストール済のIXスキーマがすべて削除されます。

  3. ユーザーIXを作成して、必要な権限を付与します。

  4. IXとして接続します。

  5. スキーマ・オブジェクトを作成して移入するスクリプトを実行します。

ix_main.sqlスクリプトが正常に実行され、IXスキーマがインストールされた後で、ユーザーIXとして接続されます。スキーマが作成されたことを確認するには、次のコマンドを使用します。

SQL> SELECT table_name FROM user_tables;

スクリプトとその機能の一覧については、表5-23を参照してください。

ix_drop.sqlスクリプトは、IXスキーマの削除に使用します。

SHスキーマのインストール

Sales History(SH)スキーマの作成に必要なすべてのスクリプトは、$ORACLE_HOME/demo/schema/sales_historyにあります。


関連項目:

sh_main.sqlを実行する前に、「サンプル・スキーマのインストールのガイドライン」を参照してください。

すべてのオブジェクトの作成およびデータのロードに必要なスクリプトは、sh_main.sqlのみです。sh_main.sqlを実行すると、次の作業が実行されます。

  1. パスワード、スクリプト内で使用する表領域名、およびデータ・ファイルとログ・ファイルのディレクトリの入力を求めるプロンプトが表示されます。

  2. インストール済のSHスキーマがすべて削除されます。

  3. ユーザーSHを作成して、必要な権限を付与します。

  4. SHとして接続します。

  5. スキーマ・オブジェクトを作成して移入するスクリプトを実行します。

sh_main.sqlスクリプトが正常に実行され、SHスキーマがインストールされた後で、ユーザーSHとして接続されます。スキーマが作成されたことを確認するには、次のコマンドを使用します。

SQL> SELECT table_name FROM user_tables;

スクリプトとその機能の一覧については、表5-27を参照してください。


注意:

ディメンション表PROMOTIONSCUSTOMERSPRODUCTSとファクト表SALESは、SQL*Loaderによってロードされ、その後、ファイルをロードし格納する位置を示すために、データベース内にディレクトリ・パスが作成されます。この結果、外部表sales_transactions_extを使用することによって、COSTS表のロードが可能になります。

スキーマの拡張機能として、オプションでsh_olp_c.sqlおよびsh_olp_d.sqlの2つのスクリプトが提供されています。SHスキーマでOLAPサービスの拡張分析機能を使用できるようにするには、sh_olp_c.sql作成スクリプトを実行します。SHスキーマの初期設定に戻る場合は、スクリプトsh_olp_d.sqlを使用してsh_olp_c.sqlの結果を元に戻し、ディメンションを元の状態に戻します。

SHスキーマの削除に使用するファイルは、sh_drop.sqlです。

サンプル・スキーマのリセット

サンプル・スキーマを初期状態にリセットするには、SQL*Plusのコマンドライン・インタフェースから次の構文を使用します。

@?/demo/schema/mksample systempwd syspwd hrpwd oepwd pmpwd ixpwd shpwd bipwd default_tablespace temp_tablespace log_file_directory/

mksampleスクリプトは、11パラメータをとります。SYSTEMおよびSYS用のパスワード、およびHROEPMIXSHBIスキーマ用のパスワードを指定します。一時表領域およびデフォルトの表領域を指定し、ログ・ファイル・ディレクトリ名の末尾にはスラッシュをつけます。

mksampleスクリプトは、複数のログ・ファイルを生成します。

多くの場合、サンプル・スキーマを初めてインストールすることと、インストール済のバージョンを上書きして再インストールすることは、同じ作業です。*_main.sqlスクリプトによって、スキーマ・ユーザーとそのすべてのオブジェクトが削除されます。

OEまたはIXスキーマ内のオブジェクト間の関係が複雑であるために、DROP USER ... CASCADE操作が正常に終了しない場合があります。これはまれなケースですが、このような場合、次のいずれかの手順を実行します。

OEスキーマのOCカタログ・サブスキーマの場合の手順は、次のとおりです。

  1. OEとして接続します。

  2. oc_drop.sqlスクリプトを実行します。

  3. SYSTEMとして接続します。

  4. OEとして接続しているユーザーがいないことを確認します。

    SELECT username FROM v$session;
    
  5. ユーザーを削除します。

    DROP USER oe CASCADE;
    

IXスキーマの場合の手順は、次のとおりです。

  1. SYSTEMとして接続します。

  2. IXユーザーとして接続しているユーザーがいないことを確認します。

    SELECT username FROM v$session WHERE username like 'IX%';
    
  3. dix.sqlスクリプトを実行して、スキーマを削除します。各ユーザーのパスワードを要求されます。

サンプル・スキーマのアンインストール

サンプル・スキーマをインストールから削除する必要がある場合は、drop_sch.sqlをSQL*Plusコマンド行で実行できます。このスクリプトはOracle Databaseに付属しています。

例2-1 サンプル・スキーマのアンインストール方法

@?/demo/schema/drop_sch.sql systempwd spool_file_name

drop_sch.sqlスクリプトは、2つのパラメータを使用します。systempwdSYSTEMユーザーのパスワード、spool_file_nameは、操作のログを取得するスプール・ファイルの名前です。