MYSQL错误:拒绝用户访问';用户1'@';本地主机';

MYSQL错误:拒绝用户访问';用户1'@';本地主机';,mysql,vert.x,Mysql,Vert.x,我正在尝试从我的vertx应用程序连接到mysql。我得到以下错误: io.vertx.mysqlclient.MySQLException:io.vertx.mysqlclient.impl.codec.CommandCodec.handleErrorPacketPayload(CommandCodec.java:116)的io.vertx.mysqlclient.impl.codec.InitCommandCodec.decodeInit1(InitCommandCodec.java:177

我正在尝试从我的vertx应用程序连接到mysql。我得到以下错误:

io.vertx.mysqlclient.MySQLException:io.vertx.mysqlclient.impl.codec.CommandCodec.handleErrorPacketPayload(CommandCodec.java:116)的io.vertx.mysqlclient.impl.codec.InitCommandCodec.decodeInit1(InitCommandCodec.java:177)的io.vertx.mysqlclient.MySQLException用户“user1”@'localhost”(使用密码:YES)的访问被拒绝

代码如下:

    MySQLConnectOptions connectOptions = new MySQLConnectOptions()
            .setPort(3306)
            .setHost("localhost")
            .setDatabase("bookstore")
            .setUser("user1")
            .setPassword("pass123");

    // Pool options
    PoolOptions poolOptions = new PoolOptions()
            .setMaxSize(5);

    // Create the client pool
    MySQLPool client = MySQLPool.pool(Vertx.vertx(),connectOptions, poolOptions);

    // A simple query
    client.query("SELECT * FROM country WHERE name='julien'",ar->
        {
            if(ar.succeeded())
            {
                RowSet result = ar.result();
                System.out.println("Got " + result.size() + " rows ");
            } else {
                ar.cause().printStackTrace();
                System.out.println("Failure: " + ar.cause().getMessage());
            }
            // Now close the pool
                client.close();
            });
}
尽管我能够使用相同的凭据连接到工作台中的sql server。
请有人帮助理解这个问题。

要么您发送了错误的密码,要么
user1@localhost
尚未被授予对
书店
数据库的权限。我已将所有权限授予user1。但它仍然不起作用。我是否可以在日志中打印出问题的具体内容?@Barmar这些是对用户1的授权:将
书店
*上的所有权限授予
用户1
@
本地主机
授予使用权限。对
user1
@
localhost
查看存在错误的整个类可以帮助更好地调试。-确保传入的Vertx实例
MySQLPool.pool
是类中使用的的的Vertx实例。您可以尝试
MySQLPool.pool(getVertx()…
)-其他一些尝试是使用IP地址(而不是本地主机)访问
.setHost()
对于我来说,vertx 4.1和mysql 8也存在同样的问题。所有选项都设置正确,但我仍然遇到拒绝访问错误。我的Spring Boot应用程序和普通jdbc驱动程序能够使用所有相同的设置连接到db。我甚至将setSSLMode设置为false,但仍然存在此问题