1

以前に実行したシステム テーブル ダンプに存在する特定のテーブルからデータを回復しようとしています。ダンプに存在する行を、アクティブなテーブルに存在する可能性のある行に追加したいと思います。問題は、ダンプ内のテーブルの名前が現在データベースに存在するものと同じではない可能性があることです (それらは ARC_TREND_ のプレフィックスで動的に作成されます)。さらに、ダンプに存在するテーブルの名前がわかりません。列と既存の行で正しいテーブルを認識できるため、SQL Developerを使用してダンプファイルを分析したいと考えていました。

SQL Developer でダンプ ファイルを操作できると盲目的に信じていますが、ダンプ ファイルを開こうとすると、Java Heap OutOfMemory 例外が発生します。sqldeveloper.bat と sqldeveloper.conf の両方で最大ヒープ サイズを 640m から 1024m に調整しましたが、役に立ちませんでした。

exp で作成されたダンプ ファイルに存在するテーブルからデータを回復するために実行する一連のアクションを誰かが推奨できますか? グラフィカル ツールがあればいいのですが、私はコマンド ラインをよく知っています。正しいテーブルを選択するために、ダンプに存在するテーブルを分析する必要があります。次にimp TABLE=、アクティブなインスタンスに戻すために使用できると思います。既存のテーブル名と一致しない可能性が高いため、SQL Developer を使用して、インポートしたテーブルから必要なテーブルに行をコピーします。

ダンプは 10g を実行している Linux サーバーから取得され、同じデータベースの 11g インスタンス (同じサーバーとデータベース インスタンス、アップグレード済み) にインポートされます。

ありがとう

4

1 に答える 1

3

impではなく参照しているのでimpdp、これはデータポンプでエクスポートされなかったと思います。いずれにせよ、SQLDeveloperを通じて何か役立つものが得られるとは思えません。

幸い、あなたがやろうとしていることのほとんどは、コマンドラインから非常に簡単です。パラメータを指定して実行するだけimpで、すべてのテーブル(でコメントアウト)とインデックス作成コマンドを含むテキストファイルが得られます。それから、列名からテーブルを見つけることができるはずです。INDEXFILEREM

ただし、実際には行データを表示できないため、一致する可能性のあるテーブルが複数ある場合は、複数のテーブルをインポートし、データベース内のそれらのデータを調べて、本当に必要なテーブルを確認する必要があります。

于 2012-04-03T19:40:13.290 に答える