日期:2014-05-16  浏览次数:20794 次

很棘手的问题:Access denied for user ''@'localhost' (using password: YES)
我是在用hibernate连接数据库时出现的这个问题,hibernate配置文件如下:
[code=XML][/code]
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/bookshop</property>
<property name="connection.name">root</property>
<property name="connection.password">123456</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
<mapping resource="Admin.hbm.xml" />
</session-factory>
</hibernate-configuration>

需要说下的是我的密码绝对没错,因为我可以通过mysql的客户端进入。而且root账户所有权限都有。但是一连接数据库就报这个错误,小弟很困惑,恳请各位帮忙。


------解决方案--------------------
Access denied for user ''@'localhost' 没有权限访问
grant select ...是否具有此权限。
------解决方案--------------------
你的用户名显然没有被输入! r ''@'localhost' 

检查一下你的设置方法,用户名靠什么参数来定义。确认是这个吗? <property name="connection.name">root</property>