0

我正在使用 maven-sql-plugin 编写测试类,在这里我设置了用户名、密码、驱动程序名、源文件位置和 url,我还在GRANT插件中添加了查询,但仍然ACCESS-DENIED出现错误。

这是我的插件

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sql-maven-plugin</artifactId>
<version>1.5</version>

<executions>
 <execution>
  <id>create-database</id>
  <phase>pre-integration-test</phase>
  <goals>
   <goal>execute</goal>
  </goals>
  <configuration>
   <driver>org.h2.Driver</driver>
   <!--<driver>com.mysql.jdbc.Driver</driver> -->
   <url>jdbc:h2:file:target/db/employee;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false;FILE_LOCK=NO;INIT=CREATE
    SCHEMA IF NOT EXISTS employee\;SET SCHEMA
    employee</url>
   <username>root</username>
   <password>root</password>
   <srcFiles>
    <srcFile>src/test/resources/employee.sql</srcFile>
   </srcFiles>
   <sqlCommand>${GRANT ALL PRIVILEGES ON . TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION}</sqlCommand>
  </configuration>
 </execution>
</executions>
<dependencies>
 <dependency>
  <groupId>com.h2database</groupId>
  <artifactId>h2</artifactId>
  <version>1.3.166</version>
 </dependency>
 <!--<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> 
  <version>5.1.18</version> </dependency> -->
</dependencies>

我收到以下异常

[com.mchange.v2.resourcepool.BasicResourcePool:run-1851] - com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@462393ff -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30). Last acquisition attempt exception: 
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:996)
 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3887)
 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3823)
 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:870)
 at     com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1659)
 at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1206)
 at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2234)
 at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2265)
 at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2064)
 at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:790)
 at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
 at sun.reflect.GeneratedConstructorAccessor4.newInstance(Unknown Source)
 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
 at com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
 at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:395)
 at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
 at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:146)
 at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:195)
 at     com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:184)
 at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:200)
 at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1086)
 at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1073)
 at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:44)
 at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1810)
 at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648)
4

0 回答 0