Java 1.7 Spring 3.1.1 与 Spring-WS 2.1.1 上田 hibernate 3.6 MySQL 5.0.51a 行家 3 Tomcat 7 eclipse 3.7
大家好...
我的 Web 应用程序抛出了另一个“用户 'foo'@'localhost' 的访问被拒绝”错误,但有一点不同。
我在我的(duh)本地机器上运行一个 MySQL 实例用于开发,另一个在我的远程服务器上运行。
两个实例都有一个数据库“mydb”和两个具有相同名称和结构的表。
在本地实例上,我使用 root。
在远程机器上我发出了以下序列:
CREATE USER 'fubar'@'localhost' IDENTIFIED BY 'mypwd';
CREATE USER 'fubar'@'%' IDENTIFIED BY 'mypwd';
CREATE USER 'fubar'@'my.remote.server.com' IDENTIFIED BY 'mypwd';
GRANT ALL ON mydb.* TO ' CREATE USER 'fubar'@'localhost' IDENTIFIED BY 'mypwd';
GRANT ALL ON mydb.* TO ' CREATE USER 'fubar'@'%' IDENTIFIED BY 'mypwd';
GRANT ALL ON mydb.* TO ' CREATE USER 'fubar'@'my.remote.server.com' IDENTIFIED BY 'mypwd';
FLUSH PRIVILEGES;
我已经通过“select * from mysql.db”确认出现了三个新行,并且所有适当的字段都具有“Y”值。
在命令提示符 Pane 中的本地计算机上,我可以发出:
mysql -u fubar -p -h my.remote.server.com ,
回复密码并连接到远程数据库。
执行我的 java 程序失败并出现著名的 '拒绝用户'fubar'@'localhost'的访问 当url调整为指向远程服务器时
在我的 Eclipse 项目中使用以下内容作为我的 db.properties 文件的一部分:
hibernate.connection.url=jdbc:mysql://localhost:3306/mydb
hibernate.connection.username=root
hibernate.connection.password=myrootpwd
执行效果很好
执行失败并出现可怕的错误:
hibernate.connection.url=jdbc:mysql://my.remote.servier.com:3306/mydb
hibernate.connection.username=fubar
hibernate.connection.password=mypwd
所以我很难过。我如何使用命令行直接连接到 MySQL 服务器的远程实例,而不是在我的 db.properties 文件中?
TIA,
仍在学习的史蒂夫
最佳答案
我遇到了同样的问题,是错误的密码导致了整个问题...
您可以使用下面链接中的独立 java 程序代码来测试您的连接并确保它首先工作...
http://www.mkyong.com/jdbc/how-to-connect-to-mysql-with-jdbc-driver-java/
关于java - 另一个 "Access denied for user"错误..但我可以从命令行直接登录到远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25651120/