アプリケーションのパフォーマンスを向上させ、ディスク容量を節約するために、不要になったデータをアーカイブする最善の方法を見つけたいと考えています。あなたの経験では、これを実装する最良の方法は何ですか?どのようなツールを使用できますか? そのためには、特定の社内アプリケーションを開発する方がよいでしょうか?
27068 次
3 に答える
5
アーカイブを管理する 1 つの方法:
- 月ごとのパーティションなど、日付範囲でテーブルを分割します
- パーティションが不要になると (たとえば 36 か月後)、これらのパーティションをデータ ウェアハウスに移動できるようになりました。データ ウェアハウスは、アクセスのニーズに応じて、テキスト ファイルだけの別のデータベースになる可能性があります。
- 移動後、古くなったパーティションをプライマリ データベースから削除できるため、常に (たとえば) 36 か月分の最新データを維持できます。
- これはすべて、SQL/シェル スクリプトを組み合わせて使用することで自動化できます。
于 2016-01-25T02:32:29.160 に答える
2
古いデータを ORACLE データベースにアーカイブする最良の方法は次のとおりです。
- 日付またはサイズに基づいて、アーカイブおよび保持ポリシーを定義します。
- 定義されたポリシーに基づいて、アーカイブ可能なデータを外部テーブル (テーブルスペース) にエクスポートします。
- 外部表を圧縮して、安価な記憶媒体に格納します。
- SQL DELETE を使用して、アクティブなデータベースからアーカイブ データを削除します。
- 次に、スペースをクリーンアップするために、以下のコマンドを実行します。テーブル T_XYZ 縮小スペースを変更します。
- それでも一部のディスク領域を解放して OS に戻したい場合 (Oracle が以前に使用していた合計領域を予約しているため)、データファイル自体のサイズを変更する必要がある場合があります。 SQL> alter database datafile '/home/ oracle/database/../XYZ.dbf' resize 1m;
詳細については、 http ://stage10.oaug.org/file/sroaug080229081203621527.pdf を参照してください。
于 2014-04-17T16:57:09.563 に答える
-2
ほとんどすべてのデータベースにエクスポートできるように、データをコンマ区切りファイルにエクスポートします。そのため、Oracle のバージョンを変更したり、数年後に別のバージョンに移動したりしても、あまり心配することなく復元できます。
これを行うには、SQL*Plus のスプール ファイル機能を使用します。
于 2009-11-11T21:17:13.577 に答える