MySQLSyntaxErrorException:拒绝访问用户'' localhost'到数据库' demo'

时间:2015-03-24 18:10:46

标签: java mysql hibernate phpmyadmin wamp

我正在尝试使用我的hibernate应用程序连接到数据库。 但我无法连接除测试之外的其他数据库。

奇怪的是,如果我要创建任何数据库,它将不允许我通过hibernate访问它,除了在phpMyAdmin中预定义的测试数据库。

我尝试了很多这样的东西,但它没有用。

1

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH     GRANT OPTION;

2

    mysql -u root -p

3

     mysqladmin -u root password 'root password goes here'
  1. 我重新安装了我的wamp服务器。
  2. 这是我的hibernate.cfg.xml:

       <?xml version="1.0" encoding="utf-8"?>
        <!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
       <hibernate-configuration>
       <session-factory>
        <property name="show_sql">true</property>
        <property  name="connection.driver_class">com.mysql.jdbc.Driver</property> 
       <property name="connection.url">jdbc:mysql://localhost:3306/demo</property> 
       <property name="username">root</property> 
       <property name="password" /> 
       <property name="connection.pool_size">1</property>  
       <property name="dialect">org.hibernate.dialect.MySQLDialect</property> 
       <property name="hbm2ddl.auto">update</property>
      <!-- disabled 2nd level catche
       <property   name="catche.provider_class">org.hibernate.catche.NoCatcheProvider</property>-->
        <!-- enabled 2nd level catche -->
      <property name="catche.use_second_level_catche">true</property>
      <property name="catche.use_query_catche">true</property>
    
      <property name="catche.provider_class">org.hibernate.catche.EhCatcheProvider</property>   
       <mapping class="org.hibernet.src.userDetails" ></mapping>
       <mapping class="org.hibernet.src.Address" ></mapping>
       <mapping class="org.hibernet.src.Vehicle" ></mapping>    
     </session-factory>
     </hibernate-configuration>
    

    如果它是一个语法问题,它不应该与测试数据库一起工作,但它使用它。 我该怎么办?

1 个答案:

答案 0 :(得分:2)

最后我完成了新用户。 只需创建另一个用户并使用以下方式为其授予所有权限:

 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;