您的位置:首页 > 运维架构 > Docker

docker 运行 javaweb(oracle 数据库) 不能连接数据库问题

2016-11-01 18:21 423 查看
好大的一个坑啊。

纠结了两天,为什么docker 中的java web 不能访问oracle 数据库(thin 连接方式会报错,oci 方式没问题 ,按本文修改后,都可以访问) ? 所以得纪念下这个填坑的成果 。以便后来者(菜鸟)能快速的跳出来。

先上错误代码

java.sql.SQLException: ORA-00604: 递归 SQL 级别 1 出现
ORA-01882:
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:388)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:381)
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:564)
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)


看到这个,也是一阵的无语 。在 docker 群里询问各种大神,可惜,基本都是玩的mysql . 有个运维大神,帮我否定了各种原因,虽然,最终也不知道是怎么回事 。

不说废话了 。

解决方案 :

docker exec -it  容器id  /bin/bash
vim etc/timezone


把 timezone 的容器改为 :

Etc/CST


停止容器,重新启动容器 ,浏览器访问 ,ok 了 。解决起来就是这么简单 。

好大的一个坑 被填好了 。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  docker
相关文章推荐