質問: ### 前提・実現したいこと テスト用にOracle 12c のデータベースからOracle10gのデータベースにexpdp/impdpを利用して データの移行をしようとしていますが、いくつかのテーブルでエラーが発生しています。 <発行しているコマンド> expdp ユーザ名/パスワード@xxxxx dumpfile=PUMP_DIR:ファイル名.dmp content=DATA_ONLY tables=テーブル名 VERSION=10.2.0 ご教示の程よろしくお願いします。 ### 発生している問題・エラーメッセージ expdp時に以下のエラーが発生 ``` ORA-39166: オブジェクト"テーブル名"が見つかりません。 ORA-31655: ジョブに対してデータまたはメタデータ・オブジェクトが選択されていません ``` 上記はexpdp時の「VERSION=10.2.0」を付与した場合のみ発生し、外すと発生せずに成功しますが、 移行先のバージョンが古いため、impdp時に失敗してしまいます。 ### 該当のソースコード <発行しているコマンド> expdp ユーザ名/パスワード@xxxxx dumpfile=PUMP_DIR:ファイル名.dmp content=DATA_ONLY tables=テーブル名 VERSION=10.2.0 ### 試したこと ネット上で調べたところ12cには存在し10gには存在しない機能を利用している場合や外部キーなどを使用していると発生するということはわかったのですが、該当テーブルは特殊なテーブルではなく、特殊な項目もなければ外部キーも張っていません。 念のため、INDEXもDROPして試しましたが駄目でした。 <使用しているデータ型> CHAR,VARCHAR2,TIMESTAMP,NUMBER 制約等は特になし ### 補足情報(言語/FW/ツール等のバージョンなど)
回答: 昔から、exp/imp, expdp/impdp 共に下位バージョンへの移行が動作保障されていません。新しい機能についてはパッチが提供されているかもしれないのでVERSIONがらみのパッチがないか、Oracle サポートに確認されては?(要サポート契約) 有償ソフトの Object BrowserでデータをINSERT文に落として移行することもできますが、CLOBがあるならOracle11.2を経由してDB LINKで持っていくことを考えないといけません。 既にあるOracle10.2を11.2にバージョンを上げることも検討されては?