2016-08-10 8 views
0

私は、OpenEdgeデータベースの半分に不要な監査レコード(OE監査ではなくユーザー作成の監査)が格納されているクライアントを使用しています。データベースは約200GB、97GBはこれらの監査レコードです。ユーザーが作成した監査プロセスは現在無効になっており、使用されておらず、単にデータを削除する必要があります。OpenEdgeデータベースから領域を削除する

ここに開発ツールがないため、プログラムでデータを削除することはできません。データベース内の他の場所で孤児や参照整合性の問題を引き起こさずにデータを削除することが安全であることは分かっています。

監査テーブルは、stファイルで定義されている独自の領域にあります。

ダンプとロード(監査データを除く)をテストしましたが、主なビジネスデータベースなしでは長すぎると判断して4日後に負荷を停止しました。したがって、これは実稼働環境では許されません。

彼らは単純にデータファイルを削除してstファイルを編集しようとしましたが、バックアップ/リストアに問題がありました。おそらくstファイルの不一致が原因でした。 )。

このデータを削除する最も簡単で簡単な方法は何ですか?

+1

あなたが約半分aに200ギガバイトをダンプ&ロードすることができるはずです日。彼らは何か非常に間違っている。 –

+0

うーん、おもしろい - それはSSDの実行に依存していますか?ダンプと荷物のための通常の落とし穴は何ですか?それはかなりストレートな前方ポイントとクリックの運動ではありません?ハードウェアに依存しているだけではありませんか? – Drammy

+1

これはかなり虚ろなハードウェア - 回転錆とRAID5です。あなたが*良い* HWを持っているなら、あなたは数時間ですべてをやることができるはずです。 –

答えて

3

Proutil "truncate area"は、あなたが記述したことを行う必要があります。

データが切り捨てられた領域から削除されたら、テーブル&のインデックスを削除し、問題のあるエクステントを削除します。

(DEVツールがなければ、あなたが、むしろそれらを落とすよりEMPTYテーブルとインデックススタブ格納領域と「テーブルの移動」を作成する必要があります。)

+0

おかげでトム - 私はちょうどこれを探していた。 Progressの文書によれば、指標は無効にされているが、後でそれを有効にすることについては何も言わない。トランケーションの完了時に有効になっていますか?彼らはテーブルを削除したくない。ちょうどデータ。テーブルが単にエクステントからディスクスペースを回復するためにドロップされたのですか、それともそのプロセスの一部ですか? – Drammy

+2

その後、再度インデックスを有効にする必要があります。しかし、テーブルが空であれば大したことではありません。テーブルをドロップするのは、それがあなたがしたいことだと思ったからです。スペースを回復する必要がある場合は、テーブルとインデックスを新しい(可変サイズのエクステント)領域にテーブル移動してから、古い領域を削除する必要があります。 –

関連する問題