首页 > 解决方案 > 为什么我的 Spring Service 无法在 openshift paltform 上保持与我的数据库的连接?

问题描述

数据库部署在用于我们自己的服务器的 openshift 平台上。在旧的管理器WEB系统中,在我运行我的spring服务之前,我需要先连接数据库,否则spring会运行一个错误提示我先连接我的数据库。

org.springframework.transaction.CannotCreateTransactionException:无法为事务打开 JPA EntityManager;嵌套异常是 javax.persistence.PersistenceException:org.hibernate.exception.JDBCConnectionException:无法获取 JDBC 连接

我在openshift平台上使用oc命令连接数据库并运行spring服务后,与db pod的连接可以保持30多分钟。
现在老板要求我开发一个新网站我的同事他们复制了旧经理系统的spring后端但奇怪的是当我在不连接数据库的情况下运行这个全新的spring服务时,这个spring服务仍然可以成功运行并且没有单一的关于分贝的警告。更糟糕的是,当我超过 50 秒不发送推荐时,oc 将关闭连接。
我检查了这两个服务的application-dev.properties文件,但没有发现任何关于 db 连接的信息。我在 openshift paltform 中检查了 db 的 DEPLOYMENT CONFIG 的 YAML 和 PODS 的 YAML,但没有发现任何区别。MySQL 的my.ini文件的 wait_time_out 也不起作用。

补充:
当我运行旧的 Spring 后端服务时,会显示 oc cmd

>Forwarding from 127.0.0.1:13390 -> 3306  
>Forwarding from [::1]:13390 -> 3306  
>Handling connection for 13390  
>Handling connection for 13390

当我运行新的 Spring 后端服务时,oc cmd 只显示

>Forwarding from 127.0.0.1:13390 -> 3306  
>Forwarding from [::1]:13390 -> 3306

所以我想知道是否有类似自动发送关于 Spring 框架的 SQL 推荐,但我仍然没有发现?

标签: mysqlspring-bootopenshift

解决方案


推荐阅读