6.1.4 DBMSの格納領域の変更(ORACLEの場合)
DBMSの機能を利用して表領域やスキーマを変更する方法を示します。
-
すべてのデータをエクスポートする
-
すべてのテーブル・インデクス・ビューを削除する
-
すべてのテーブル・インデクス・ビューを再作成する
-
すべてのデータをインポートする
-
DBMSへの接続先情報を変更する
詳細な変更方法を次に示します。
- 〈この項の構成〉
(1) すべてのデータのエクスポート
すべてのデータをエクスポートするには,expdpコマンドを実行します。expdpコマンドについては,ORACLEのマニュアルを参照してください。
expdpコマンドの指定例を次に示します。
expdp <DBアクセスユーザ名1>/<DBアクセスパスワード> PARFILE=<パラメタファイル名>
パラメタファイルには,CSCIWのすべてのテーブル名を記述します。パラメタファイルの記述例を次に示します。
TABLES=<SYSTEMID>_PROCESS_DEF,<SYSTEMID>_ACTIVITY_DEF,… CONTENT=DATA_ONLY
- 注
-
SYSTEMIDには,ワーク管理データベースを一意に識別するためのシステムIDを指定してください。
- 重要
-
expdpコマンドを実行すると,デフォルトでディレクトリ・オブジェクトDATA_PUMP_DIRにダンプファイル・ログファイルを出力します。このため,DATA_PUMP_DIRに読み書き権限のあるユーザで実行するか,DIRECTORYオプションなどを使用して読み書き権限のあるディレクトリ・オブジェクトを出力先に指定してください。また,ほかのスキーマからエクスポートする場合は,EXP_FULL_DATABASE権限が必要です。expdpコマンドについては,ORACLEのマニュアルを参照してください。
(2) すべてのテーブル・インデクス・ビューの削除
テーブル・インデクス・ビューを削除するには,次に示すSQLスクリプトファイルを編集します。
<CSCIWインストールディレクトリ>/sql/droptable_oracle.sql <CSCIWインストールディレクトリ>/sql/droptableex_oracle.sql※
- 注※
-
アプリケーション呼び出しサービスを使用する場合だけ編集してください。
削除用に編集したSQLスクリプトファイルは,SQL*Plusを使用して実行します。
sqlplusコマンドに編集したSQLスクリプトファイルを指定し,実行することで,すべてのテーブル・インデクス・ビューを削除できます。SQL*Plusの使用方法については,ORACLEのマニュアルを参照してください。
sqlplusコマンドの指定例を次に示します。
sqlplus <DBアクセスユーザ名1>/<DBアクセスパスワード> @<Oracle Net 接続識別子> @<削除用のSQLスクリプトファイルの絶対パス>
(3) すべてのテーブル・インデクス・ビューの再作成
テーブル・インデクス・ビューを再作成するには,次に示すSQLスクリプトファイルを編集します。
<CSCIWインストールディレクトリ>/sql/createtable_oracle.sql <CSCIWインストールディレクトリ>/sql/createtableex_oracle.sql※
- 注※
-
アプリケーション呼び出しサービスを使用する場合だけ編集してください。
再作成用に編集したSQLスクリプトファイルは,SQL*Plusを使用して実行します。sqlplusコマンドに編集したSQLスクリプトファイルを指定し,実行することで,すべてのテーブル・インデクス・ビューを再作成できます。SQL*Plusの使用方法については,ORACLEのマニュアルを参照してください。
sqlplusコマンドの指定例を次に示します。
sqlplus <DBアクセスユーザ名2>/<DBアクセスパスワード> @<Oracle Net 接続識別子> @<再作成用のSQLスクリプトファイルの絶対パス>
(4) すべてのデータのインポート
すべてのデータをインポートするには,テーブルごとにimpdpコマンドを実行します。impdpコマンドについては,ORACLEのマニュアルを参照してください。
impdpコマンドの指定例を次に示します。
impdp <DBアクセスユーザ名2>/<DBアクセスパスワード> [REMAP_SCHEMA=<移行元スキーマ>:<移行先スキーマ>]
- 重要
-
impdpコマンドを実行すると,デフォルトでディレクトリ・オブジェクトDATA_PUMP_DIRにダンプファイル・ログファイルを出力します。このため,DATA_PUMP_DIRに読み書き権限のあるユーザで実行するか,DIRECTORYオプションなどを使用して読み書き権限のあるディレクトリ・オブジェクトを出力先に指定してください。また,ほかのスキーマからインポートする場合は,IMP_FULL_DATABASE権限が必要です。impdpコマンドについては,ORACLEのマニュアルを参照してください。
(5) DBMSへの接続先情報の変更
ユーザまたはスキーマを変更した場合は,変更後のユーザまたはスキーマで接続できるユーザおよびパスワードに変更する必要があります。
変更方法については,「6.1.2 接続先DBMSの変更」を参照してください。