質問

これは私にとって興味深いものです - ほとんど無意味なタイトルにもかかわらず。私は長い間Firebirdを使用してきましたが、最近まで興味深い行動に気づいていませんでした。

埋め込まれたFirebird 1.5を使用していますが、データベースをブロブでいっぱいにしている場合(10MBの価値があるとしましょう)、データベースのサイズが増加することに気付きました。その後、データベース内のすべてのフィールドを削除でき、DBのファイルサイズは拡張されたサイズのままです。現在、20MBで、完全に空です。

Firebirdにはアーキテクチャに組み込まれていることは知っています(迅速なインデックス作成、速度の問題など)が、元の〜2MBのデフォルトに戻るといつも思っていました。

ファイルサイズを「デフレ」するための提案はありますか?その理由は、これが宇宙意識的な問題であるためです。一緒に仕事をするスペースがたくさんあったら、気にしません。しかし、そうではありません、そして私は可能な限り最適である必要があります

ありがとう!

役に立ちましたか?

解決

Firebirdデータベースで未使用のスペースを解放する唯一の方法は、バックアップを実行し、そのバックアップの即時復元を行うことです(参照: Firebird FAQ).

ここ なぜそうなのかについての技術的な説明です。

Firebirdは現在使用されていないスペースを再利用することに注意してください - すなわち。さらに10MBのブロブを入力した場合、データベースは30MBに成長しないでください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top