HOME >> Tips >> Oracle

上位バージョンのOracleで出力したdmpを下位バージョンのOracleにインポートする方法

2018/2/5
文書番号:20799



上位バージョンのOracleで出力したdmpファイルを下位バージョンのOracleにインポートする方法です。

通常、Oracleでは上位のバージョンのOracleから出力したdmpファイルを下位のバージョンのOracleへインポートしようとすると次のようなエラーが発生してインポートすることはできません。


クリックで拡大


今回は Oracle 12c サーバーの dmp を Oracle 11g のサーバーへインポートしたいと思っています。

通常の手順であれば Oracle 11g クライアントの環境から Oracle 12c サーバーへ接続して dmp ファイルを出力して、Oracle 11g クライアントの端末なり、Oracle 11g のサーバーでインポートすることができます。

そのような環境がない場合、(Oracle 12c の環境から出力した dmp を Oracle 11gへインポートしたい場合)はdmp ファイルのヘッダを書き換えることでインポートすることができます。

※この手順はOracle社公式には認められていません。
 うまくいく保証もありませんし、インポートした後に問題が起こらないとも限りませんので自己責任でお願いします。

【操作手順】

  1. 対象のdmpファイルをバイナリエディタで開きます。
    先頭のあたりにOracleのバージョンが書かれています。

    クリックで拡大
  2. これをインポートしたいOracleのバージョンに書き換えて保存します。

    クリックで拡大

今回のdmpファイルはサイズが大きかったため、いつものバイナリエディタでは開けませんでした。
「FavBinEdit」というツールは大きなファイルも開くことができるツールということで紹介されていましたのでこれを使用してみました。

Vector : FavBinEdit