phpmyadmin中的错误-'mysqli扩展名丢失'

bis0qfac  于 2022-11-09  发布在  PHP
关注(0)|答案(2)|浏览(213)

我刚安装了LAMP stack(也尝试了nginx),在安装了phpmyadmin并尝试访问'localhost/phpmyadmin'后,我收到了以下消息:

The mysqli extension is missing. Please check your PHP configuration

我已经尝试了herehere的步骤。
我试着在Ubuntu 18.04上安装“php7.2-mysql”(php 7.2是我当前的php版本),“php7.2-mysqli”重定向到“php7.2-mysql”,它们都已经安装了最新版本。
在phpmyadmin文档中,下面是关于缺少的扩展的说明:
1.20我收到一个关于缺少mysqli和mysql扩展的错误。
要连接到MySQL服务器,PHP需要一组名为〉“MySQL扩展”的MySQL函数。这个扩展可能是PHP发行版〉(编译)的一部分,否则需要动态加载。它的名称可能是〉mysqli.so或php_mysqli.dll。phpMyAdmin试图加载〉扩展,但失败了。通常,这个问题可以通过安装一个名为“PHP-MySQL”或类似的软件包来解决。
目前PHP提供了两个接口作为MySQL扩展- mysql〉和mysqli。首先尝试mysqli,因为它是最好的一个。
我也已经尝试修改php.ini文件,添加或取消注解以下行:

extension=mysqli
extension=mysqli.so
extension=mysqli.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll

然后尝试重新安装phpmyadmin,使用和不使用dbconfig-common配置数据库。还重新安装了mysql-server(版本5. 7. 24),使用和不使用secure_installation。
使用apache 2,我已经安装了以下php包:

php php-cgi libapache2-mod-php php-common php-pear php-mbstring

使用nginx我已经安装了以下php包:

php-fpm php-mysql

但这些都没有改变错误消息(即使在清除包并手动删除文件夹和重新安装之后)。
重要的是要注意,堆栈中的所有程序都工作正常。这让我认为这是phpmyadmin的一些问题。
所以,我想进入phpmyadmin的登录屏幕,但似乎没有工作。已经尝试了几个解决方案,几次。如果有人可以帮助我这个,请回答!谢谢。

hmtdttj4

hmtdttj41#

如果您更改了某些配置,但在重新安装时没有删除它,则说明没有帮助。请按照以下命令清除旧配置:

sudo apt purge php7.2-* phpmyadmin

删除后,重新安装软件包:

sudo apt install apache2 php7.2 php7.2-mysql # Add other dependent if you need ...

现在,mysqli应该存在于/etc/php/7.2/mods-available/20-mysqli.ini中:

$ cat /etc/php/7.2/mods-available/mysqli.ini
; configuration for php mysql module
; priority=20
extension=mysqli.so

如果你使用FPM,在/etc/php/7.2/fpm/conf.d/20-mysqli.ini中应该有一个软链接

bcs8qyzn

bcs8qyzn2#

我也遇到了同样的问题。不要担心,我有一个解决方案。转到xampp/php/ext.然后搜索一个文件php_mysqli. dll如果你有这个文件,然后转到xampp/php,搜索php. ini,php. ini-development,php. ini-production用你的代码编辑器一个接一个地打开这三个文件,搜索代码看起来像

=====================
Directory in which the loadable extensions (modules) reside.
; https://php.net/extension-dir
;extension_dir = "./"
; On windows:
;extension_dir = "C:\xampp\php\ext"
   ==================

用此代码更改代码

=============
Directory in which the loadable extensions (modules) reside.
; https://php.net/extension-dir
;extension_dir = "C:\xampp\php\ext"
; On windows:
;extension_dir = "C:\xampp\php\ext"
================

保存代码,问题就解决了。

相关问题