java是H2文件模式还是TCP模式更稳定?
我们有一个Spring Boot应用程序,在文件模式下使用H2(v1.4.999)。它已经正常运行了2年,但最近有一种可能性,当我们重新启动Java应用程序时,H2数据库被损坏,无法修复。我们在日志中看到这个错误:
org.h2.jdbc.JdbcSQLNonTransientConnectionException: File corrupted while reading record: null. Possible solution: use the recovery tool
不幸的是,在这种情况下,恢复工具不起作用!这种情况发生过不止一次,需要我们回滚和更早地创建快照并丢失数据。我们的数据库大约是70GB。目前我们对H2缺乏信任,因为数据库不应该那么容易损坏,无法修复
作为替代方案,我们希望完全在Java应用程序之外以TCP模式运行H2,希望它作为传统数据库服务器可能更稳定
有没有人对TCP vs文件模式的稳定性有过经验或想法
共 (0) 个答案