我正在用Java编写程序,它连接到MySQL数据库。作为第一类类,具有返回java.sql.Connection的单一静态方法。在它被调试和连接工作之后,我再也不碰它了。几天前,我发现我的程序返回了这个错误:
com.mysql.jdbc.CommunicationsException: 基础exceptionBEGIN嵌套异常导致通信链接失败 com.mysql.jdbc.CommunicationsException 消息: 底层exception:BEGIN嵌套异常导致通信链路失败 java.io.EOFException消息:无法从服务器读取响应。预期的4个字节,在连接意外丢失之前读取0。 STACKTRACE: …
我无法理解的是,自从创建数据库以来,我没有在本地主机上更改用户名和密码。我唯一改变的是:在表中添加更多的表和更改的列,但这不会触发此错误。我用我的项目做的事情是,我把字符集从UTF-8改为UTF-16,但我想它几乎不会影响我的连接方法。
如果更改连接器并放入类路径连接器v.5.1.22,则返回错误:
拒绝用户"root@localhost“的访问(使用密码: YES)
甚至我也声明了用户root的所有权限。
发布于 2013-01-09 15:35:01
我建议如下:
让我们首先解决第一个问题。对于用户"root@localhost“(使用密码: YES)拒绝其他问题访问是一个独立的问题,我们可以在后面讨论。
发布于 2013-01-15 09:15:22
我忘了告诉你我用的是Win 7机器。谢谢你的答复。我在我的池中设置了更多的连接,但没有工作(当应用程序启动和池接受15时,我有大约10个到数据库的连接)。
!
我没有忘记我把我的项目的编码从UTF-8 (我从一开始就开始)更改为Unicode (因为我希望在JOptionPane.showMessageDialog();窗口中使用东欧字母表,因为它是我的本地字母)。只是为了测试,我把字符集换成了UTF-8,我的连接又开始工作了。老实说..。我不明白这个。
https://stackoverflow.com/questions/14231238
复制相似问题