我正在使用HyperSQL作为我的Tomcat应用程序的数据库。数据库服务器正在从我的应用程序运行,文件的位置位于 webapps/myapp 文件夹中。
问题是,在 Linux(Centos 7(重新启动后,数据库以某种方式发生冲突,数据库被重新创建(所有数据都被删除(。如果我只重新启动雄猫,一切正常。
我的雄猫服务:
[Unit]
Description=Tomcat 8.5 servlet container
After=syslog.target network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
数据库文件夹具有完整的创建和删除权限,组和所有者是 tomcat 用户。
HSQL 服务器启动时,我的应用程序启动并使用数据库,我正在使用 Hibernate:
Properties properties = new Properties();
properties.setProperty(Environment.DRIVER, "org.hsqldb.jdbcDriver");
properties.setProperty(Environment.URL, "jdbc:hsqldb:hsql://localhost:9001/my_repository");
properties.setProperty(Environment.USER, xxx);
properties.setProperty(Environment.PASS, yyy);
properties.setProperty(Environment.DIALECT, "org.hibernate.dialect.HSQLDialect");
properties.setProperty(Environment.HBM2DDL_AUTO, "update");
可能出了什么问题?为什么PC重启后总是删除数据?
感谢您的任何回答。
尝试更改属性"HBM2DDL_AUTO"进行验证,甚至将其删除。
此属性负责"自动架构生成"。
您可以在此处找到其他值或信息