デフォルト: デフォルト値は設定されていません。
用途
構文および説明
EXCLUDE=object_type[:name_clause] [, ...]
object_type
は除外するオブジェクトのタイプを指定します。DATABASE_EXPORT_OBJECTS
(全体モードの場合)、SCHEMA_EXPORT_OBJECTS
(スキーマ・モードの場合)、TABLE_EXPORT_OBJECTS
(表および表領域モードの場合)ビューを問い合せて、object_type
の有効な値の一覧を表示できます。OBJECT_PATH
列にリストされる値が有効なオブジェクト・タイプです。(このような問合せの実行方法の例は、「メタデータのフィルタ」を参照してください。)
指定したインポート・モードでは、EXCLUDE
文に指定されたオブジェクト型を除き、ソースに含まれるすべてのオブジェクト型およびその依存オブジェクトが含まれます。オブジェクトが除外されると、そのオブジェクトのすべての依存オブジェクトも除外されます。たとえば、表を除外すると、その表のすべての索引およびトリガーも除外されます。
name_clause
は、オプションです。これを使用すると、あるオブジェクト型のうち、特定のオブジェクトをファイングレイン選択できます。その型のオブジェクト名に対するフィルタとして使用されるSQL式です。SQL演算子および指定した型のオブジェクト名の比較対象となる値で構成されています。name_clause
は、名前付きのインスタンスを持つオブジェクト型にのみ適用されます(たとえば、TABLE
およびVIEW
には適用されますが、GRANT
には適用されません)。それは、コロンでオブジェクト型と区切り、二重引用符(一重引用符は名前文字列を区切るために必要なため)で囲む必要があります。たとえば、EXCLUDE=INDEX:"LIKE
'DEPT%'"
と設定した場合、dept
で始まる名前を持つすべての索引を除外できます。
name_clause
に指定する名前は、データベース内の既存のオブジェクトに、大文字と小文字も含めて完全に一致させる必要があります。たとえば、指定するname_clause
がEMPLOYEES
という表に対するものだった場合は、すべてが大文字のEMPLOYEES
という表が存在する必要があります。name_clause
に対してEmployees
、employees
などを指定した場合、表は検出されません。
2つ以上のEXCLUDE
文を指定できます。
オペレーティング・システムによっては、このパラメータの値を指定するときに引用符とともにエスケープ文字を使用する必要があります。このパラメータはパラメータ・ファイルで指定することをお薦めします。パラメータ・ファイルを使用すると、コマンドラインでは必要なエスケープ文字の数を減らすことができます。
次の項で説明するとおり、特定のオブジェクト(特にCONSTRAINT
、GRANT
およびUSER
)を除外対象として指定した場合の効果を認識しておく必要があります。
制約の除外
次の制約は除外できません。
表の作成とロードを正常に行うために必要な制約。たとえば、索引構成表の主キー制約、REF
列を持つ表のREF
SCOPE
およびWITH
ROWID
制約など。
次に、EXCLUDE
文の例およびその解釈を示します。
EXCLUDE=CONSTRAINT
では、表の正常な作成およびロードに必要な制約を除く、すべての制約を除外します。
EXCLUDE=REF_CONSTRAINT
は、参照整合性(外部キー)制約を除外します。
権限とユーザーの除外
EXCLUDE=
GRANT
を指定すると、すべてのオブジェクト型に対するオブジェクト権限およびシステム権限が除外されます。
EXCLUDE=
USER
を指定すると、ユーザーの定義のみが除外され、そのユーザーのスキーマ内のオブジェクトは除外されません。
特定のユーザーとそのユーザーのすべてのオブジェクトを除外するには、次のコマンドを指定します(hr
は除外するユーザーのスキーマ名です)。
impdp FULL=YES DUMPFILE=expfull.dmp EXCLUDE=SCHEMA:"='HR'"
ここで、インポート・モードがFULL
に指定されていることに注意してください。モードを指定しなかった場合は、デフォルト・モードのSCHEMAS
が使用されます。その場合は、スキーマをインポートすると同時に除外するようコマンドが指示することになるため、エラーが発生します。
EXCLUDE
=USER
:"= 'HR
'"などの文を使用してユーザーを除外しようとすると、DDL文CREATE USER hr
のみが除外され、期待した結果が得られない場合があります。
制限事項
EXCLUDE
およびINCLUDE
は、相互に排他的なパラメータです。
例
DBAまたはDATAPUMP_IMP_FULL_DATABASE
ロールを持つ他のユーザーが、パラメータ・ファイルexclude.par
で次のように実行するとします。(例を実行するには、まずこのファイルを作成する必要があります。)
EXCLUDE=FUNCTION EXCLUDE=PROCEDURE EXCLUDE=PACKAGE EXCLUDE=INDEX:"LIKE 'EMP%' "
次のコマンドを発行します。このコマンドでは、ExportのFULL
パラメータで示した例を実行して、expfull.dmp
ダンプ・ファイルを作成できます。「FULL」を参照してください。
> impdp system DIRECTORY=dpump_dir1 DUMPFILE=expfull.dmp PARFILE=exclude.par
expfull.dmp
ダンプ・ファイルから、emp
で始まる名前を持つファンクション、プロシージャ、パッケージおよび索引を除くすべてのデータがロードされます。