phpMyAdmin-缺少MySQL扩展
我分别安装了所有东西(Apache、PHP、MySQL和phpMyAdmin),没有使用编译,除了phpMyAdmin之外,所有东西都可以正常工作 我遇到的问题是,当我尝试调用时,错误消息指出“MySQL扩展丢失”: localhost/phpmyadmin/index.php 当我打电话的时候 localhost/phpmyadmin/setup/index.php 我有两条信息,我不知道它是否应该是这样的: Bzip2压缩和解压缩需要函数(bzopen, bzcompress),该系统上不可用 以及: Zip解压缩需要不可用的函数(Zip_open) 在这个系统上phpMyAdmin-缺少MySQL扩展,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,我分别安装了所有东西(Apache、PHP、MySQL和phpMyAdmin),没有使用编译,除了phpMyAdmin之外,所有东西都可以正常工作 我遇到的问题是,当我尝试调用时,错误消息指出“MySQL扩展丢失”: localhost/phpmyadmin/index.php 当我打电话的时候 localhost/phpmyadmin/setup/index.php 我有两条信息,我不知道它是否应该是这样的: Bzip2压缩和解压缩需要函数(bzopen, bzcompress),该系统上不可
有什么建议吗?您的安装缺少一些php模块,phpmyadmin自述文件中应该有所需模块的列表。如果您最近启用了模块,请尝试重新启动apache服务/守护进程 编辑:文档中似乎没有单独的“启用这些模块”,因此在php.ini中启用
mysql
或mysqli
(您可能需要先安装它)
如果您不打算在phpMyAdmin中上载或下载压缩文件,则这两条消息并不重要。如果这样做,请启用
zlib
和/或bz2
模块。一些linux发行版有一个php\u-mysql和php\u-mysqli包要安装。首先确保正确安装了mysql。您可以通过检查是否可以使用mysql命令promp访问mysql来确保这一点。因此,如果您的mysql正在工作,那么它可能没有加载。为此,请遵循下面给出的步骤
首先,您必须找到php.ini。它可以在任何地方,但如果您使用
<?php phpinfo(); ?>
应该成为
extension=mysql.so
extension=mysql.dll
对于windows,它将是
;extension=mysql.dll
应该成为
extension=mysql.so
extension=mysql.dll
只需检查php.ini文件,在这个文件中,分号(;)用于注释 如果看到,请删除分号
;extension=mysql.dll
现在扩展已启用,但需要重新启动appache
extension=mysql.dll
加载mysql dll时,需要将完整路径放入php ini中,即:- extension=c:/php54/ext/php_mbstring.dll
extension=c:/php54/ext/php_mysql.dll
然后您就不需要将它们移动到windows文件夹。在我的情况下,我必须安装扩展:
yum install php php-mysql httpd
然后重新启动apache:
service httpd restart
这就解决了问题。正如其他人所说,您需要删除“
”代码>'来自:
;extension=php_mysql.dll
和
;extension=php_mysqli.dll
在php.ini中启用mysql和mysqli扩展。但是最重要的是,您应该在php.ini中设置扩展目录
,以指向扩展目录。大多数情况下,默认设置为“ext
”。您应该将其更改为extensions文件夹的绝对路径。i、 e.如果您在驱动器C上安装了xampp,那么C:/xampp/php/ext
是到ext文件夹的绝对路径,它应该像一个魔咒一样工作 我只是补充一下
apt-get install php5-mysqlnd
这将要求从“php5 mysql”覆盖mysql.so
这是我的工作。安装bzip2
和zip
PHP扩展解决了我在Ubuntu中的问题:
sudo apt-get install php7.0-bz2
sudo apt-get install php7.0-zip
使用php(you version)-(extension)
安装并启用phpmyadmin自述文件中所需的任何缺失模块。我也遇到类似问题,但在我的php.ini中添加extension=mysql.so没有帮助。原来mysql.so文件不在我的扩展文件夹中,也不在我机器上的任何其他地方。通过下载php源代码并手动构建扩展,然后将其复制到扩展文件夹中,解决了这个问题。如果您在其中创建了一个php文件,是否加载了mysql扩展?如果没有,您需要在php.init中激活它,这对大家都很有帮助,但我还需要做一件事,那就是,按照php手册中的描述,将libmysql.dll移动到Windows System32文件夹中-将其添加到Windows路径中也应该可以,但是,一般来说,这个方法不适用于我。如果没有设置“extension_dir”,则只需为每个扩展添加路径。设置“extension_dir”比为每个扩展添加路径容易得多。Ex:extension_dir=“c:/php/ext”来自最新的PHP7.3;注意:以前的PHP版本中使用的语法('extension=.so'和;'extension='PHP_uzy.dll')由于遗留原因而受支持,可能是:;在未来的PHP主要版本中已弃用。所以,如果可能的话,请;移动到新的('extension=)语法。我不熟悉这个。我必须从哪个文件夹运行sudo apt get install php7.0-bz2