Ubuntu 20.04 PhpMyAdmin 错误 500 php7.0 - caching_sha2_password]
Ubuntu 20.04 PhpMyAdmin error 500 with php7.0 - caching_sha2_password]
当我使用 php 版本 7.0 和 Ubuntu 20.04 并尝试打开:http://localhost/phpmyadmin/ - 然后:HTTP ERROR 500 appers.
当我尝试打开任何其他连接数据库的页面时,出现:
- ”消息:mysqli::real_connect():服务器请求身份验证
客户端未知的方法 [caching_sha2_password]"
- "mysqli::real_connect(): (HY000/2054): 服务器请求
客户端未知的身份验证方法
enter image description here
enter image description here
当我将 php 版本更改为 7.4 时 - 一切正常(phpmyadnim 和页面)
我检查了 7.0 版本的日志(tail /var/log/apache2/error.log)并且有错误:
- "PHP 解析 error:syntax 错误,意外 'const' (T_CONST),预期 /usr/share/php/PhpMyAdmin/MoTranslator/Translator 中的变量 (T_VARIABLE)。php 第 58 行
enter image description here
我试过安装 :
sudo apt-get install php-mbstring php7.0-mbstring php-gettext
但每次我这样做 - 我都会得到信息:“无法找到包 php-gettext”
在 php 版本 7.4 上一切正常。但是我想用php 7.0.
我试过了:
- 删除并重新安装 phpmyadmin
- 删除并重新安装 php 版本 7.0
当运行7.1.16之前的PHP版本,或者PHP7.2之前7.2.4的时候,设置MySQL8服务器的默认密码插件为mysql_native_password
否则即使未使用 caching_sha2_password
,您也会看到类似于 The server requested authentication method unknown to the client [caching_sha2_password]
的错误。
这是因为 MySQL 8 默认为 caching_sha2_password
,旧版 PHP (mysqlnd) 无法识别的插件。相反,通过在 my.cnf
中设置 default_authentication_plugin=mysql_native_password
来更改它。 caching_sha2_password plugin
将在未来的 PHP 版本中得到支持。
当我使用 php 版本 7.0 和 Ubuntu 20.04 并尝试打开:http://localhost/phpmyadmin/ - 然后:HTTP ERROR 500 appers.
当我尝试打开任何其他连接数据库的页面时,出现:
- ”消息:mysqli::real_connect():服务器请求身份验证 客户端未知的方法 [caching_sha2_password]"
- "mysqli::real_connect(): (HY000/2054): 服务器请求 客户端未知的身份验证方法
enter image description here enter image description here
当我将 php 版本更改为 7.4 时 - 一切正常(phpmyadnim 和页面)
我检查了 7.0 版本的日志(tail /var/log/apache2/error.log)并且有错误:
- "PHP 解析 error:syntax 错误,意外 'const' (T_CONST),预期 /usr/share/php/PhpMyAdmin/MoTranslator/Translator 中的变量 (T_VARIABLE)。php 第 58 行
enter image description here
我试过安装 :
sudo apt-get install php-mbstring php7.0-mbstring php-gettext
但每次我这样做 - 我都会得到信息:“无法找到包 php-gettext”
在 php 版本 7.4 上一切正常。但是我想用php 7.0.
我试过了:
- 删除并重新安装 phpmyadmin
- 删除并重新安装 php 版本 7.0
当运行7.1.16之前的PHP版本,或者PHP7.2之前7.2.4的时候,设置MySQL8服务器的默认密码插件为mysql_native_password
否则即使未使用 caching_sha2_password
,您也会看到类似于 The server requested authentication method unknown to the client [caching_sha2_password]
的错误。
这是因为 MySQL 8 默认为 caching_sha2_password
,旧版 PHP (mysqlnd) 无法识别的插件。相反,通过在 my.cnf
中设置 default_authentication_plugin=mysql_native_password
来更改它。 caching_sha2_password plugin
将在未来的 PHP 版本中得到支持。