HSQLDB有一些將內存數據保存到文件的機制嗎?HSQLDB有一些機制將內存中的數據保存到文件中嗎?
正如我知道服務器關閉後,所有內存數據變得無法訪問。所以我想將所有內存數據保存到文件中。 不幸的是我不能使用BACKUP機制,因爲它不能用於內存數據。
HSQLDB有一些將內存數據保存到文件的機制嗎?HSQLDB有一些機制將內存中的數據保存到文件中嗎?
正如我知道服務器關閉後,所有內存數據變得無法訪問。所以我想將所有內存數據保存到文件中。 不幸的是我不能使用BACKUP機制,因爲它不能用於內存數據。
HSQLDB數據庫有不同的類型。全內存數據庫不會將數據存儲到磁盤。這些數據庫的網址格式爲jdbc:hsqldb:mem:<name>
。
如果您的數據庫URL格式爲jdbc:hsqldb:file:<file path>
,並且您的表格是默認的MEMORY表格,則數據全部在內存中,但更改會寫入一組磁盤文件。
使用所有類型的數據庫(包括all_in_memory),可以使用SQL語句SCRIPT <file path>
將完整數據庫保存到文件中。如果將數據保存到擴展名爲.script
的文件,則可以將該文件作爲文件數據庫打開。
當你運行一個服務器,使用URL的無jdbc:hsqldb
前綴,例如server.database.0=file:C:/myfile
看到這裏http://hsqldb.org/doc/2.0/guide/running-chapt.html#running_db-sect
HSQLDB是否將任何臨時文件寫入磁盤,然後將其刪除,當我使用db URL作爲jdbc時:hsqldb:mem:,並且我將一行插入表中?我正在將我的Java Mule ESB應用程序部署到cloudhub。它適用於本地,但不適用於雲。看起來cloudhub不允許寫文件。當我註釋掉數據庫插入並返回虛擬響應時,應用程序工作正常。 –
RuntimeException
mem:數據庫(URL jdbc:hsqldb:mem:)不會向文件系統寫入任何內容。 –
fredt
@fredt如果我們排除臨時文件 – Antoniossss