我用的是 SQLyog管理的 Mysql数据库,在SQLyog有game_srv_db和test这两个数据库。我用Mybatis访问test数据库中sign表的时候没有问题,然后我改访问game_srv_db中的数据表sign却不行。报错如下:
Exception in thread "Main Thread" org.apache.ibatis.exceptions.PersistenceException: 
### Error opening session.  Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'game_srv_db'
### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'game_srv_db'
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:8)
at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromDataSource(DefaultSqlSessionFactory.java:83)
at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSession(DefaultSqlSessionFactory.java:32)
at tq.server.signin.service.SigninService.selectOneByid(SigninService.java:32)
at MySignin.main(MySignin.java:18)  我估计可能是数据库权限的问题,请教如何更改game_srv_db的权限?或者是其他问题?  求教!!!如有回复不胜感激。

解决方案 »

  1.   

    1.LZ的database 是,'game_srv_db',用户名好像是空吧。
    2. 增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。     grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";        ON 子句中*.* 说明符的意思是“所有数据库,所有的表
      

  2.   

    试了一下,还是老问题了。就改'game_srv_db'这个数据库的权限,怎么做?
      

  3.   

    我补充一个说明,我用原来的用户名和密码在SQLyog上能登陆的。而且能看到所有的数据库。