【发布时间】:2019-05-04 03:50:18
【问题描述】:
我尝试在 Tomcat 上部署应用程序。该应用程序使用数据库。但是Tomcat无法存储,因为他尝试存储在服务器的根目录下,当然他没有权限,日志说:
Error opening database: "Could not save properties /sudoDb.lock.db" [8000-176]
如何将 Tomcat 配置为存储在允许的任何地方,例如。 TOMCAT_HOME 或其他任何地方。
感谢任何提示
【问题讨论】:
-
请提供有关您使用的框架、配置和源代码的详细信息,并至少提供完整的异常 StackTrace。
-
它是一个 grails 应用程序,我只能配置 url = "jdbc:h2:sudoDb;...." 我已经将该应用程序部署在另一个 tomcat 上,其中 tomcat 将数据库存储在 TOMCAT_HOME/bin一切正常。我重复我的问题:我可以告诉tomcat,在哪里存储数据库。如果没有stacktrace和配置信息就无法回答这样一个简单的问题,我必须假设tomcat存储的数据库是随机的。
-
Apache Tomcat 不是 DBMS。它是一个 servlet 容器,因此它根本不存储数据库。这意味着您必须使用第三方模块。堆栈跟踪很容易揭示您正在使用哪个模块以及哪里出了问题。但幸运的是,您提到了
url = "jdbc:h2:sudoDb;....",这表明您正在使用能够存储数据库的未知版本的 H2 JDBC 驱动程序。这可能会有所帮助:h2database.com/html/faq.html#database_files -
感谢您的回答,试过了,效果很好