インポート(未完成)

エクスポート・ファイルのデータをOracleに書き戻す

参考>ユーティリティ・ユーザーズ・ガイド


目次。

事前準備

アクセス権限

制限事項

エラー処理


事前準備

インポート・ユーティリティを使用するにはDB作成後、下記のどちらかのスクリプトを実行する

※ただし、Oracleを普通にインストールしていればCATALOG.SQLはすでに実行されている

CATEXP.SQLのお仕事

IMP_FULL_DATABASEロールに、必要なすべての権限を割り当てる。

IMP_FULL_DATABASEをDBAロールに割り当てる。

注意!>読出し専用の表領域にはインポートできない。書き込み可能にしてあとで戻すようにしよう。

 

アクセス権限

CREATE SESSION権限・・・Oracle Serverにログオンするため(DB作成中に確立したCONNECTロールに含まれる)

IMP_FULL_DATABASEロール・・・他のユーザが作成したエクスポート・ファイルをインポートするときに必要

前提:エクスポート・ファイルが全データベース・エクスポートで作成され(EXP_FULL_DATABASEロールをしようしている人に作成された場合)、IMP_FULL_DATABASEロールが付与されているときに限る

 

制限事項

DBの初期設定時に、ユーザー任意の表領域にインポートする場合には、新しいロールバックセグメントを作成する必要がある。

※初期設定時にはSYSTEMというロールバックセグメントがOracleによって作成される。これはSYSTEM表領域のオブジェクトを処理するトランザクションにのみ使用される。

※ロールバック・セグメントのための記憶領域パラメータOPTIMALは、エクスポートおよびインポート時には保たれない

 

エラー処理

オブジェクトエラー(致命的エラーと非致命的エラーがある)

行エラー(致命的エラーと非致命的エラーがある)

 

表オブジェクト:インポートの順序

  1. 表定義
  2. 表データ
  3. 表索引
  4. 整合性制約及びトリガー

 

インポート・モード

ユーザー

全データベース

 

インポート・ユーティリティの使用方法(ほとんどエクスポートと一緒なのでチョロチョロっと書きます)

下記のいづれか。やっぱ1でしょうけど。

因みにコマンドはOracle7.3NT上ではimp73.exeという名前であった。

1.コマンド : IMP user_name/passward PARFILE=file_name

OR

IMP PARFILE=file_name

→残りのインポートパラメータは指定されたファイルに入れておく

2.コマンド : IMP user_name/passward のあとに各種引数を指定する。

→システム上でパラメータ数がコマンド行の最大の長さを超えない限り使用可。

3.コマンド : IMP er_name/passward で開始し、あとは対話式。

 

インポート・パラメータ

※順序はとっても重要。ホントはこの順序で指定すればキーワードはいらないんだけどやっぱ危ないからやめておこうね。

キーワード 内容(デフォルト値) キーワード 内容(デフォルト値)
USERID ユーザー名/パスワード INDEXFILE 指定されたファイルへ表/索引情報の書き込み
BUFFER データ・バッファ・サイズ CHARSET エクスポート・ファイル(NLS_LANG)のキャラクタ・セット
FILE 出力ファイル(EXPDAT.DMP) FULL ファイルをインポート(N)
SHOW EXPファイル内容表示(N) FROMUSER 所有するユーザーのリスト
IGNORE 作成時エラー無視(N) TOUSER インポート先のユーザーのリスト
GRANTS 権限のインポート(Y) TABLES 表名リスト
INDEXES 索引のインポート(Y) RECORDLENGTH ファイルのIOレコード長
ROWS 表データ行のインポート(Y) INCTYPE 増分インポートの種類
LOG 画面出力のログ・ファイル COMMIT 配列挿入後にコミット(N)
DESTROY 表領域データ・ファイルの上書き(N) PARFILE パラメータ・ファイル