关于Java项目中连接mysql失败的几种情况原因分析

对于基础比较薄弱的我来说Java链接mysql的错误原因不是很了解,今天我将罗列一下几种比较常见的错误类型,大家可以根据自己遇到的情况对号入座。

密码错误导致的mysql连接不上,密码错误分为以下几种情况

(1)控制台报错信息中有:Access denied for user ‘root’@‘localhost’ (using password: YES),这句话的意思是说,你在连接数据库的地方配置了密码,但是密码错误。

(2)控制台报错信息中有:Access denied for user ‘root’@‘localhost’ (using password: NO),这句话的意思是说,你在连接数据库的地方没有配置密码,但是mysql的密码不为空,所以密码错误。

数据库名字错误导致的mysql连接不上:
当控制台报错信息中有:Unknown database ‘*****’,这句话的意思是,数据库名字错误,也就是说你代码里设置的数据库名字和在mysql中真实的数据库名字不一样。
数据库未启动导致的mysql连接不上:

当控制台报错信息中有:Communications link failure Last packet sent to the server was 0 ms ago. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure,这句话的意思是mysql没有启动。
有时候,明明你在eclipse里设置了密码,但是运行还是提示密码错误,没有设置,这是eclipse缓存导致的,你的改动eclipse并没有识别,此时有两种方法:

(1)将mysql密码设置成你改动之前的密码,比如源码里本身设置的mysql密码是123,你改成了你自己的密码,但是eclipse并没有识别,此时你可以将计就计,代码里写成123,把自己的mysql密码也改成123,这样就能正常连接了。

(2)清理eclipse缓存,所谓清理缓存即重新编译项目,如下图所示:
关于Java项目中连接mysql失败的几种情况原因分析_第1张图片
关于Java项目中连接mysql失败的几种情况原因分析_第2张图片
一般clear一下项目后改动的都会生效,但是也有不生效的情况,此时你只能按照方法(1)的方式将计就计,修改自己的mysql密码。

你可能感兴趣的:(Tools)