• Authentication method 'caching_sha2_password' not supported by any of the available plugins.


    这是MySQL8.0一个登录验证的问题。

    第一步 初始化配置

    如果已经初始化了,就直接跳过第一步

    你需要知道的是:MySQL安装的路径。我的路径是:G:mysql-8.0.11-winx64

    在C:WindowsSystem32路径下找到cmd.exe,右键以管理员身份运行,并切换到mysql-8.0.11-winx64中。

    输入命令初始化data目录:

    mysqld --initialize --console 会出现一段内容,找到内容中root@localhost: 它后面就是登录数据库的初始密码,一定要记下来

    再输入命令初始化mysql服务

    mysqld --install 然后输入命令启动mysql

    net start mysql 如果已经启动了,他会提示你服务已经启动。

    如果提示拒绝访问,那你肯定没有以管理员身份运行cmd。在C:WindowsSystem32路径下找到cmd.exe,右键以管理员身份运行。继续上步操作。

    接下来,登录到数据库

    mysql -u root -p 密码:输入就是刚才记下来的,

    登陆成功后接着更改密码,输入

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
    这以上只是确保不会出现其他的问题,还不能解决密码验证的问题。

    第二步 修改MySQL的登录验证配置

    cmd连接mysql

    mysql -u root -p 修改加密规则

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; 更新一下用户的密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; 刷新权限

    FLUSH PRIVILEGES; 重置下密码(123456789这里是你要设置的密码)

    ALTER USER 'root'@'localhost' IDENTIFIED BY '123456789'; 完成以后,试着重新连接mysql数据库,如果还没有成功,继续往下走:

    第三步 根目录增加配置文件

    在mysql-8.0.11-winx64这个目录下,新建my.ini文件,文件内容如下,记得保存:

    [mysqld]

    默认使用“mysql_native_password”插件认证

    default_authentication_plugin=mysql_native_password [mysql]

    设置mysql客户端默认字符集

    default-character-set=utf8 [client]

    设置mysql客户端连接服务端时默认使用的端口

    port=3306 default-character-set=utf8

    默认使用“mysql_native_password”插件认证

    default_authentication_plugin=mysql_native_password [mysql]

    设置mysql客户端默认字符集

    default-character-set=utf8 [client]

    设置mysql客户端连接服务端时默认使用的端口

    port=3306 default-character-set=utf8 接下来需要重启mysql服务。

    先停止mysql服务,

    net stop mysql 如果提示拒绝访问,那你肯定没有以管理员身份运行cmd。在C:WindowsSystem32路径下找到cmd.exe,右键以管理员身份运行。继续上步操作。

    已停止成功后,继续输入命令启动mysql

    net start mysql 查看是不是可以正常启动

    如果无法启动,就是那个my.ini文件的问题,尝试只保留文件中的一部分

    [mysqld]

    默认使用“mysql_native_password”插件认证

    default_authentication_plugin=mysql_native_password 继续启动mysql。

    启动成功后,就说明修改配置文件成功,尝试去连接数据库,应该就成功了

  • 相关阅读:
    [Err] 1064
    maven项目警告: Using platform encoding (UTF-8 actually) to copy filtered resources
    maven中引入oracle驱动报错Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0
    springMVC 中url后缀使用html,不能返回json数据,否则会报406错误
    网站并发量的计算方法
    win7旗舰版显示不了文件扩展名
    Java获取mysql数据库元数据
    spring中 context:property-placeholder 导入多个独立的 .properties配置文件
    Could not autowire field: private java.lang.Integer com.taotao.sso.service.impl.UserServiceImpl.SSO_
    linux Nginx服务开机自启
  • 原文地址:https://www.cnblogs.com/Anthony518/p/11570348.html
Copyright © 2020-2023  润新知