【问题标题】:ORA-00604: error occurred at recursive SQL level 1 and ORA-01882: timezone region not foundORA-00604: 递归 SQL 级别 1 发生错误和 ORA-01882: 未找到时区
【发布时间】:2019-05-01 18:43:22
【问题描述】:

我正在使用连接字符串连接到 Oracle 数据库。当我在本地运行代码时一切正常,但是当我将相同的代码部署到 PCF 时,我得到“ORA-00604:递归 SQL 级别 1 和 ORA-01882:未找到时区”。

执行线路 connection.Open() 时出现此错误。直到那里一切正常。但是当我在本地运行时,这条线有效。

谁能帮我解决这个问题?这是 PCF 问题吗?

【问题讨论】:

  • 这可能是环境配置问题:作为云,棘手的事情是确定它是否是您可以控制的配置的一部分。
  • 是否有任何解决方法,因为我只需要使用 PCF!
  • 在部署到 PCF 之前,我在 manifest.yml 文件中添加了 TZ 字段。例如-TZ:亚洲/加尔各答。现在一切正常。
  • @Sikindar 谢谢...请点赞

标签: oracle cloud-foundry


【解决方案1】:

来自this thread

1) 解决方案是使用数据库支持的时区。这可以通过设置 TZ 环境变量来完成。设置 TZ 时,将使用其值而不是操作系统默认时区。

2) ... 将连接属性 oracle.jdbc.timezoneAsRegion 设置为“false”。这将恢复为旧式会话时区行为。

要使用方法 1,请使用以下命令:

cf set-env <app-name> TZ '<your-timezone>'

cf restage <app-name>

要使用方法 2,请使用以下命令:

cf set-env <app-name> JAVA_OPTS '-Doracle.jdbc.timezoneAsRegion=false'

cf restage <app-name>

【讨论】:

    猜你喜欢
    • 2020-10-17
    • 1970-01-01
    • 1970-01-01
    • 2017-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-16
    相关资源
    最近更新 更多