使用 Abyss Web 服务器实施 MySQL 时如何修复 HY000/2054?
How to fix HY000/2054 when implementing MySQL with Abyss Web Server?
我正在使用 Abyss X1 启动 Web 服务器,并尝试使用以下两个脚本通过 PHP 实现 MySQL 服务器:
connect_db.php :
#Connect on 'localhost' for user 'admin'
#with password 'RoboticCowboy2019' to database 'site_db'.
$dbc = mysqli_connect
( 'localhost' , 'admin', 'password', 'site_db' )
OR die
( mysqli_connect_error() );
#Set encoding to match PHP script encoding.
mysqli_set_charset($dbc, 'utf8' );
和
require.php :
#Incorporate the MySQL connection script.
require ('../connect_db.php');
#Display MySQL version and host.
if(mysqli_ping($dbc)){
echo 'MySQL Server'.mysqli_get_server_info($dbc).'on'.mysqli_get_host_info($dbc);
}
但是,当我转到 http://localhost/require.php 时,出现以下错误:
"Warning: mysqli_connect(): The server requested authentication method unknown to the client [caching_sha2_password] in /Applications/Abyss Web Server/connect_db.php on line 6"
”警告:mysqli_connect(): (HY000/2054): 服务器请求的身份验证方法对 /Applications/Abyss Web Server/connect_db 中的客户端未知。php 第 6 行
服务器请求客户端未知的身份验证方法
我正在按照一本我知道已经过时的书的说明进行操作,但到目前为止我已经能够解决所有问题。我还读到它与 MySQL 更新和实施 sha2 有关,而 PHP 仍然没有?我正在为我的 compsci class 做这件事,所以我很感激能得到的所有帮助。
谢谢!
改变用户
ALTER USER 'mysqluser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mysqlpassword';
或使用
shell>mysql --default-auth=mysql_native_password
我正在使用 Abyss X1 启动 Web 服务器,并尝试使用以下两个脚本通过 PHP 实现 MySQL 服务器:
connect_db.php :
#Connect on 'localhost' for user 'admin'
#with password 'RoboticCowboy2019' to database 'site_db'.
$dbc = mysqli_connect
( 'localhost' , 'admin', 'password', 'site_db' )
OR die
( mysqli_connect_error() );
#Set encoding to match PHP script encoding.
mysqli_set_charset($dbc, 'utf8' );
和
require.php :
#Incorporate the MySQL connection script.
require ('../connect_db.php');
#Display MySQL version and host.
if(mysqli_ping($dbc)){
echo 'MySQL Server'.mysqli_get_server_info($dbc).'on'.mysqli_get_host_info($dbc);
}
但是,当我转到 http://localhost/require.php 时,出现以下错误:
"Warning: mysqli_connect(): The server requested authentication method unknown to the client [caching_sha2_password] in /Applications/Abyss Web Server/connect_db.php on line 6"
”警告:mysqli_connect(): (HY000/2054): 服务器请求的身份验证方法对 /Applications/Abyss Web Server/connect_db 中的客户端未知。php 第 6 行 服务器请求客户端未知的身份验证方法
我正在按照一本我知道已经过时的书的说明进行操作,但到目前为止我已经能够解决所有问题。我还读到它与 MySQL 更新和实施 sha2 有关,而 PHP 仍然没有?我正在为我的 compsci class 做这件事,所以我很感激能得到的所有帮助。
谢谢!
改变用户
ALTER USER 'mysqluser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mysqlpassword';
或使用
shell>mysql --default-auth=mysql_native_password