インポート時にアーカイブログが作成されないようにする( TRANSFORM パラメータ)

メモ:  Category:oracle

アーカイブログで運用している環境にインポートを行うと、沢山のアーカイブログが作成されます。

私の場合、ディスクの空きが少ない環境でインポートを実施したが、アーカーブログが増えすぎたせいでインポートしきれなかったという経験もあったりします。そんな環境であっても、 12.1 以降ならアーカイブログが作成されないようにするオプション( TRANSFORM )を使うことでインポートすることができます。

パラメータ指定でアーカイブログを抑制する

アーカイブログを生成しない方法として、 NOARCHIVELOG モードにしてしまう方法とオブジェクトを NOLOGGING モードに変更する方法もありますが、 12.1 以降では TRANSFORM パラメータの DISABLE_ARCHIVE_LOGGING オプションを使うことでアーカイブログの生成を抑えることができます。

DISABLE_ARCHIVE_LOGGING オプションでは、表( TABLE )のロギング属性と索引( INDEX )のロギング属性を無効・有効(デフォルトは有効)に指定することができ、「Y」の無効とすることでアーカイブログが作成されなくなります。

TRANSFORM のパラメータ指定は、次のようになります。

TRANSFORM = transform_name:value[:object_type]

transform_name には、 DISABLE_ARCHIVE_LOGGING を指定します。 value には、「Y」または「N」を指定しそれぞれの指定は次の意味を持ちます。

  • Y : インポートされる前に TABLE または INDEX 、あるいはその両方のロギング属性を無効にします。
  • N : ロギングを無効にしません。(デフォルト)

object_type には、対象とするオブジェクトを指定し、次の3つから選択します。

  • TABLE: 表のロギング属性を対象にします。
  • INDEX: 索引のロギング属性を対象にします。
  • 設定なし:表と索引のロギング属性を対象にします。

実際のインポートでは、 impdp コマンドに次のようにパラメータを指定して実行します。

impdp SCOTT/TIGER DUMPFILE=scott_yymmdd.dmp DIRECTORY=DATAPUMP_DIR TRANSFORM=DISABLE_ARCIVE_LOGGING:Y

TRANSFORM パラメータに DISABLE_ARCIVE_LOGGING オプションを指定することで、アーカイブログが生成されなくなりインポート終了後にはオブジェクトのロギング属性は元の設定に戻されます。

注意点:データベースが FORCE LOGGING モードの場合、このオプションは影響を与えません。必ずロギングされます。

bluenote by BBB