Oracle 21c XE にサンプルスキーマを設定する方法

本サイトは広告収入およびアフィリエイト収益を受けております。

スポンサーリンク
スポンサーリンク

お疲れ様です。きざきまるおです。

今回はOracle社によって準備されているサンプルスキーマを設定する方法を書いていきます。
サンプルスキーマといいつつ若干不親切なので皆さんの助けになれればいいなと思います。

それではどうぞ。

サンプルスキーマ概要

サンプルスキーマは以下6つのスキーマで構成されています。

  • HR:会社の従業員及び施設に関する情報
  • OE:会社の製品の在庫と販売を管理
  • PM:各製品に関する説明書を詳細情報を管理
  • IX:出荷情報を管理
  • SH:事業統計を管理
  • BI:ビジネスインテリジェンス情報を管理

ER図は以下URLをご参照ください。
https://docs.oracle.com/en/database/oracle/oracle-database/21/comsc/schema-diagrams.html#GUID-D268A4DE-BA8D-428E-B47F-80519DC6EE6E

設定

それでは早速やっていきましょう。まずは以下URLからサンプルスキーマをダウンロードしましょう。
※今回はtar.gzファイルを前提として進めていきます。
https://github.com/oracle-samples/db-sample-schemas/releases

次にORACLE_HOMEディレクトリに先ほどダウンロードしたファイルを配置するためのディレクトリを作成しましょう。

mkdir $ORACLE_HOME/sample_schema

次にサンプルスキーマファイルを/tmpへ配置して展開し、展開後のファイルを先ほど作成したディレクトリへ配置してください・。

配置はWinSCPを利用
tar -xvf db-sample-schemas-21.1.tar.gz
mv db-sample-schemas-21.1 $ORACLE_HOME/sample_schema/

次にスキーマ作成SQL内のディレクトリ情報を変更する必要がありますので以下コマンドを入力しましょう。

cd $ORACLE_HOME/sample_schema/db-sample-schemas-21.1
perl -p -i.bak -e 's#__SUB__CWD__#'$(pwd)'#g' *.sql */*.sql */*.dat

さていよいよサンプルスキーマの設定です。まずは作業用のPDBを作成しましょう。
※必ずテスト環境で実施しましょう。

sqlplus / as sysdba
create pluggable database SAMPLE admin user sample identified by sample
FILE_NAME_CONVERT = ('/opt/oracle/oradata/XE/pdbseed/', '/opt/oracle/oradata/SAMPLE/');

PDBを自動起動できるようにしておきましょう。

alter pluggable database SAMPLE open;
alter pluggable database SAMPLE save state;

OSコマンドから直接PDBに接続できるようtnsnames.oraに以下設定を追加しておきましょう。

SAMPLE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = SAMPLE)
    )
  )

最後に作成したPDBに接続して以下コマンドをたたいて完了です。

@?/sample_schema/db-sample-schemas-21.1/mksample oracle oracle hr oe pm ix sh bi users temp /sample_log/ localhost:1521/SAMPLE

かなり大変だったかと思いますがお疲れさまでした。

ではまた。

タイトルとURLをコピーしました