2016-05-31 3 views
0

専用のデータベースサーバを必要とせず、HSQLDBやH2のような機能を備えたSpringブートアプリケーション用のファイルベースのSQLデータベースが必要です。 さらに、そのデータベースを主にファイルシステム上で動作させ、メモリ使用量を制限したいと考えています。しかし、私がHSQLDBやH2を使っている場合でも、変更はシャットダウン時にのみディスクに保存され、メモリ使用量は爆発的に増加します。埋め込みDBメモリの使用制限とファイルへの即時書き込み

すべての変更をすぐにディスクに保存し、すべての変更を常にメモリに保存しないでください。
My Spring Bootデータソースurlは現在:jdbc:hsqldb:file:data/xxxです。

私はHSQLDBとH2の機能を誤解していますか?設定が欠落していますか? 500キロバイトのメモリキャッシュ(実際のメモリ使用量は、おそらく二倍量である)とディスクへの変更の即時書き込みに使用して

答えて

1

これは、設定は、ディスクベースのテーブルを示す

jdbc:hsqldb:file:filename;hsql.default_table_type=cached;hsqldb.cache_size=500;hsqldb.write_delay=false 

設定可能です。

+0

私はすでにこれらの設定を試していました。 Windowsエクスプローラのデフォルトのディレクトリビューもファイル検索ツールも「すべて」では動的に変更されるHSQLDBファイルのファイルサイズを表示/更新しません:ファイルを右クリックしてプロパティをクリックする必要があります現在のサイズを参照してください!ドライブのプロパティは、ウィンドウをクリックすることにより、使用済み/空き領域をリフレッシュします。ファイルがHSQLDBによって開かれたままになっているからだと思います。私のアプリケーションを閉じると、ファイルサイズがリフレッシュされるので、実行時に動作しないと思ったのです。 – Traubenfuchs

関連する問題