猿问

PHPmysqli_CONNECT:客户端未知的身份验证方法[缓存_sha2_密码]

我使用phpmysqli_connect登录到MySQL数据库(全部在本地主机上)

<?php//DEFINE ('DB_USER', 'user2');//DEFINE ('DB_PASSWORD', 'pass2');DEFINE ('DB_USER', 'user1');DEFINE ('DB_PASSWORD', 'pass1');
DEFINE ('DB_HOST', '127.0.0.1');DEFINE ('DB_NAME', 'dbname');$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);if(!$dbc){
    die('error connecting to database');    }?>

MySQLServerini文件:

[mysqld]# The default authentication plugin to be used when connecting to the serverdefault_authentication_plugin=caching_sha2_password
#default_authentication_plugin=mysql_native_password

带着caching_sha2_password在MySQLServerini文件中,根本不可能使用user 1或user 2登录;

错误:mysqli_CONNECT():服务器请求客户端[缓存_sha2_密码]中未知的身份验证方法。

带着mysql_native_password在MySQLServerini文件中,可以使用user 1登录,但使用user 2登录时也会出现相同的错误;


如何使用caching_sha2_password在MySQL服务器上?


POPMUISE
浏览 1265回答 3
3回答

白衣染霜花

我运行了以下命令ALTER USER 'root' @ 'localhost' identified with mysql_native_password BY 'root123';在命令行中,最后在本地服务中重新启动MySQL。
随时随地看视频慕课网APP
我要回答