Hibernate to MySql:拒绝访问用户'root'@'<ip>'(使用密码:YES)</ip>

时间:2014-03-04 01:09:37

标签: mysql hibernate

我正在尝试将Hibernate从本地连接到远程MySQL数据库。

错误讯息:

WARN : org.hibernate.engine.jdbc.internal.JdbcServicesImpl - HHH000342: Could not
obtain connection to query metadata : Access denied for user 'root'@'<ip>' (using 
password: YES)
ERROR: org.hibernate.tool.hbm2ddl.SchemaUpdate - HHH000319: Could not get database 
metadata

的hibernate.cfg.xml

    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="connection.url">jdbc:mysql://vm-name-001:3306/dbname</property>
    <property name="connection.username">root</property>
    <property name="connection.password">password</property>

的pom.xml

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${hibernate-version}</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.29</version>
    </dependency>

在远程MySQL数据库中,我发布了show grants for 'root'@'%';并收到了:

...
| GRANT SELECT, INSERT, UPDATE, DELETE, LOCK TABLES, EXECUTE ON `dbname`.* TO
 'root'@'%'
| GRANT ALL PRIVILEGES ON `dbname`.* TO 'root'@'%'
...

如果我登录的是与远程MySQL数据库不同的虚拟机,我可以发出mysql -u root -h vm-name-001 -p并登录。

我的同事也说他可以使用Hibernate连接正常,尽管他使用的是Tomcat服务器。

编辑 - 我的队友也可以使用Tomcat之外的常规Java应用程序进行连接。

我错过了什么?

0 个答案:

没有答案