首页 > 解决方案 > 到 mysql 服务器的 Java 连接字符串失败

问题描述

完全不熟悉java/tomcat/mysql。所以道歉...设置第三方应用程序

Windows 环境 Tomcat 在本地机器上并且正在运行。mysql 在本地机器上并且正在运行。java在本地机器上并且正在运行。

这是 config.properties 文件

##############################   database config begin  ##############################
db.driverClassName=com.mysql.jdbc.Driver
db.url=jdbc:mysql://127.0.0.1:3306/hanshow_shopweb_v17n? 
autoReconnect=true&useUnicode=true&characterEncoding=UTF- 
8&zeroDateTimeBehavior=convertToNull&connectTimeout=30000
&socketTimeout=180000&allowMultiQueries=true&useSSL=false&useCompression=true
db.username=hanshow
db.password=9rztak
db.maxActive=20
db.maxIdle=20
db.maxWait=60000
db.defaultAutoCommit=true

我在尝试连接到 mysql 时遇到错误。认为这一定很简单,我不知道下一步该做什么。

在我看到的tomcat日志中

[ERROR] [Druid-ConnectionPool-Create-710941460] create connection error, url: jdbc:mysql://127.0.0.1:3306/hanshow_shopweb_v17n?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&connectTimeout=30000&socketTimeout=180000&allowMultiQueries=true&useSSL=false&useCompression=true, errorCode 0, state 08001
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.

任何方向表示赞赏。

标签: javamysql

解决方案


相同错误的其他报告和解决方案似乎表明客户端和服务器之间的版本不匹配(我知道,一个简单的错误消息对于mysql开发人员来说太过分了,对吧?)这可以通过确保解决客户端相对于服务器是最新的。最新的客户通常应该这样做。

Java 应用程序通常使用 maven 构建系统,这意味着在您的项目中应该有一个名为pom.xml. 该文件中的某处应该有一个<dependency>标签,<groupid>标签为mysql<artifactId>标签为mysql-connector-java。也应该有<version>标签。(如果没有,您将需要添加它。)确保<version>有最新的可能。

你可以通过访问这个地址找到最新版本的客户端: https ://mvnrepository.com/artifact/mysql/mysql-connector-java

更新客户端版本后,执行mvn installmaven 以下载新版本的驱动程序,并重建您的项目。


推荐阅读