![](/img/trans.png)
[英].MySQLNonTransientConnectionException: Could not create connection to database server
[英]Could not create connection to database (ColdFusion)
我正在通过ColdFusion创建一个简单的CRUD应用程序。 我要去http://localhost:8600/CFIDE/administrator/index.cfm
ColdFusion管理员面板,并添加一个“新数据源”。 但是我收到以下错误:
Connection verification failed for data source: dsnMyVariable
java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
The root cause was that: java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
更新:
安装MySQL 8后,我在创建DSN时收到完全相同的错误消息。 这似乎是MySQL 8的兼容性问题。检查ColdFusion 2016的系统支持矩阵只显示MySQL 5.7,因此MySQL 8可能不支持或与内置驱动程序兼容。
安装较新的JDBC驱动程序似乎可以解决问题,并允许DSN进行验证。
mysql-connector-java-8.0.11.jar
)解压缩并复制到目录{cf2016_root}\\wwwroot\\WEB-INF\\lib
找到旧的 MySQL驱动程序jar并重命名它,使其没有.jar
扩展名。 例如,将mysql-connector-java-5.1.39-bin.jar
重命名为mysql-connector-java-5.1.39-bin.jar.old
。 (实际位置和版本号可能会有所不同,但通常位于{cf2016_root}\\lib\\
)
重新启动ColdFusion 2016 Windows服务
最后,使用Driver Type = Other创建一个新DSN并输入以下内容。 只需用正确的值替换“YourDatasourceName”和“YourDatabaseName”即可。
YourDatasourceName
jdbc:mysql://127.0.0.1:3306/YourDatabaseName?tinyInt1isBit=false&
com.mysql.jdbc.Driver
com.mysql.jdbc.Driver
root
(your password)
如果没有看到您真正的DSN设置,这只是猜测,但是...验证服务器设置是否正确。 由于MySQL与CF在同一台计算机上运行,因此请输入localhost
或127.0.0.1
我确认输入无效的服务器名称(如NotARealServerName (网络上没有该名称的计算机))会产生您在尝试验证CF11中的DSN时看到的相同错误。
一旦你开始工作,我强烈建议你创建一个单独的用户帐户 ,授予适当的权限,并将其与CF DSN(而不是“root”)一起使用。
问题是版本 mysql连接器java 。
我第一次使用最新版本的Connector/J 8.0.11
,需要使用以前版本的Connector/J 5.1.46
。 Ageax的建议给了我很多帮助!
兼顾MySQL 5
和Other
驱动程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.