oracle - 如何将 Oracle JVM 参数添加到 Tomcat 执行

标签 oracle tomcat jvm jvm-arguments

我在我的应用程序上使用 Oracle 11G 版本,它是一个 Apache Tomcat 服务器。

有些用户在使用特定时区(例如 ETC/通用时区)时会遇到一些数据库查询问题。 Oracle 抛出以下异常:

ORA-01882: timezone region not found

我找到了解决此问题的方法。有一个特定的参数需要在 JVM 启动时提供给它:

-Doracle.jdbc.timezoneAsRegion=false

我想把这个放在Tomcat的配置里。 我需要一个 Windows 和一个 Linux 解决方案。我可以将此设置放在哪里?

最佳答案

可以在tomcat的启动脚本中添加JVM参数(通常是catalina.bat或catalina.sh)。

对于 Windows (catalina.bat)

set JAVA_OPTS="%JAVA_OPTS% -Doracle.jdbc.timezoneAsRegion=false"

对于 linux (catalina.sh)

JAVA_OPTS="$JAVA_OPTS -Doracle.jdbc.timezoneAsRegion=false"
export JAVA_OPTS

您还可以在任何版本的库中更新文件 oracle/jdbc/defaultConnectionProperties.properties(即在您的 jar 中 - ojdbc7.jar 或 classes12.jar)您正在使用包含以下行:

oracle.jdbc.timezoneAsRegion=false

关于oracle - 如何将 Oracle JVM 参数添加到 Tomcat 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54336011/

相关文章:

oracle - 查找与 Oracle 表关联的序列和触发器

php - Symfony + Doctrine Oracle DateTime 格式问题

mysql - 如何将Grails war部署到tomcat

jakarta-ee - jmx 无法连接到本地主机

oracle - ORA-00932 : inconsistent datatypes: expected INTERVAL DAY TO SECOND got CHAR

android - 使用 Oracle 服务器实现 Android 通知

tomcat - Grails 中基于 RESTful 证书的 (X509) 登录身份验证

java - Linux 上如何处理 JVM OutOfMemoryError?

java - 为什么同一个静态字段在dalvik中有两个不同的id?

java - 使用外部属性运行 Jar 文件