0

リモート MySQL データベースにログを記録する OpenWRT ルーターで小さなプログラムを実行しています。データベースが使用できなくなった場合、プログラムはバッファ ファイル (/var/buffer) に書き込み、データの損失を防ぎます。問題は、ルーター自体に保存されているため、データベースが長時間ダウンしている場合、かなり早く空き容量が不足する可能性があることです.

ファイルを最大 20,000 行に保ち、新しいファイルが書き込まれるたびに (最大サイズに達したら) 古いものを破棄すると、データの損失を最小限に抑えることができ、ストレージが不足することを心配する必要がなくなります。スペース (少しの損失は世界の終わりではなく、古いものよりも新しいものを保持したい)。

私の調査から、ファイル全体を書き直さないとファイルの最初の行を削除できないことを理解しています(良くない、時間がかかりすぎます)。

より良い方法はありますか?または、唯一のオプションを追加するために新しい行を追加するたびに、20k 行のファイルを書き直していますか?

4

1 に答える 1