Ubuntu 20.04 PhpMyAdmin错误500与php7.0-缓存\u sha2\u密码]

Ubuntu 20.04 PhpMyAdmin错误500与php7.0-缓存\u sha2\u密码],php,mysql,ubuntu,phpmyadmin,php-gettext,Php,Mysql,Ubuntu,Phpmyadmin,Php Gettext,当我在Ubuntu 20.04上使用php 7.0版并尝试打开时:http://localhost/phpmyadmin/ -然后:HTTP错误500 appers 当我尝试打开与数据库连接的任何其他页面时,会出现: “消息:mysqli::real_connect():服务器请求身份验证 客户端未知的方法[缓存\u sha2\u密码]” “mysqli::real_connect():(HY000/2054):服务器请求 客户端未知的身份验证方法“ 当我将php版本更改为7.4时,一切

当我在Ubuntu 20.04上使用php 7.0版并尝试打开时:http://localhost/phpmyadmin/ -然后:HTTP错误500 appers

当我尝试打开与数据库连接的任何其他页面时,会出现:

  • “消息:mysqli::real_connect():服务器请求身份验证 客户端未知的方法[缓存\u sha2\u密码]”
  • “mysqli::real_connect():(HY000/2054):服务器请求 客户端未知的身份验证方法“

当我将php版本更改为7.4时,一切正常(phpmyadnim和pages)

我检查了7.0版的日志(tail/var/log/apache2/error.log),发现错误:

  • PHP解析错误:语法错误,第58行的/usr/share/PHP/PhpMyAdmin/MoTranslator/Translator.PHP中出现意外的'const'(T_const),应为变量(T_variable)

我尝试安装:

sudo apt get安装php mbstring php7.0-mbstring php gettext

但每次我这样做时,我都会得到信息:“无法找到php gettext包”

在PHPVersion7.4上一切正常,但我想使用PHPVersion7.0

我试过:

  • 再次卸下并安装phpmyadmin
  • 删除并重新安装php 7.0版

当运行7.1.16之前的PHP版本或7.2.4之前的PHP 7.2时,请将MySQL 8服务器的默认密码插件设置为
MySQL_native_password
,否则您将看到类似于
服务器请求的身份验证方法的错误,客户端不知道[缓存\u sha2_密码]
即使未使用
缓存\u sha2\u密码

这是因为MySQL 8默认为
缓存\u sha2\u密码
,这是一个旧版PHP(mysqlnd)无法识别的插件而是通过在
my.cnf
中设置
default\u authentication\u plugin=mysql\u native\u password
来更改它。在未来的PHP版本中将支持
caching\u sha2\u password plugin

来源