MySQL连接适用于Workbench,但不适用于使用相同凭据的Tomcat应用程序

时间:2014-07-22 13:18:02

标签: mysql database-connection

我正在通过SSH使用远程Redhat系统。 Tomcat 7MySQL 5.5服务器都已安装并且似乎正在正常运行。

我可以使用Workbench over SSH tunneling和定义的MySQL用户从本地安装的localhost连接到MySQL。我可以毫无意外地运行查询和导航表。

当我尝试使用Workbench成功连接的MySQL定义用户(same credentials)在相同环境中运行的Tomcat应用程序连接到同一MySQL服务器时,失败

此时我不知道生成的确切错误消息(我不是管理员)因此,此处的任何指导都表示赞赏。

我的问题是为什么我可以连接Workbench(它本地有效连接),而不是我的Tomcat应用程序,它实际上是服务器的本地应用程序?

可能是Tomcat运行的上下文的权限问题?

参考文献:

连接字符串示例(凭据已更改):

jdbc:mysql://localhost/mysql_database_name?user=ApplicationUsername&password=ApplicationPassword"

此外,我已经验证了

mysql-connector-java-5.1.27-bin.jar

位于WEB-INF文件夹中,并且:

Class.forName("com.mysql.jdbc.Driver");

解析。

此Web应用程序在使用相应凭据连接的另一台服务器上的dev和test中都有效。

1 个答案:

答案 0 :(得分:0)

确保连接字符串中存在mysql服务器的端口号。通常,如果未指定port,则默认值将用作3306.也许您的mysql在不同的端口上运行?

jdbc:mysql:// [host] [,failoverhost ...] [:port] / [database]» [= propertyValue1] [&安培; propertyName2] [propertyName1?] [= propertyValue2] ...

如果未指定主机名,则默认为127.0.0.1。如果未指定端口,则默认为3306,即MySQL服务器的默认端口号。