我已经使用安装了 PHP-MySQL 模块
sudo apt-get install php-mysql
但它显示尚未安装该怎么办?在 ubuntu 16.04 中。
这是状态,它显示
root@simple1-ThinkCentre-M710t:/home/simple1# whereis php-mysql
php-mysql:
答案1
php-mysql 是一个元包,它会导致实际包与二进制文件一起安装。在Ubuntu 18.04,这是在php7.2-mysql中。您可以检查已安装的软件包。
dpkg -l |grep mysql |grep php
ii php-mysql 1:7.2+60ubuntu1 all MySQL module for PHP [default]
ii php7.2-mysql 7.2.5-0ubuntu0.18.04.1 amd64 MySQL module for PHP
使用 whereis
whereis php7.2-mysql
php7: /usr/bin/php7.2 /usr/share/php7.2-sqlite3 /usr/share/php7.2-ldap /usr/share/php7.2-common /usr/share/php7.2-mbstring /usr/share/php7.2-readline /usr/share/php7.2-pgsql /usr/share/php7.2-opcache /usr/share/php7.2-mysql /usr/share/php7.2-xml /usr/share/php7.2-json
答案2
在 Ubuntu 16.04 中
你没有使用适当的方法来 检查包是否已安装。
在你的情况下,一个简单的方法是,apt -qq list php-mysql
如果安装将输出
php-mysql/xenial-updates,xenial-updates,now 1:7.0+35ubuntu6.1 all [installed]
如果不是,你会得到相同的输出,但没有[installed]
php-mysql 不是一个什么软件包,因为它只包含:
/usr/share/doc/php-mysql/changelog.gz
/usr/share/doc/php-mysql/copyright
然而它依赖于 php-common,其中包含:
/etc/cron.d/php
/usr/lib/php/php-helper
/usr/lib/php/php-maintscript-helper
/usr/lib/php/sessionclean
/usr/sbin/phpdismod
/usr/sbin/phpenmod
/usr/sbin/phpquery
/usr/share/doc/php-common/changelog.gz
/usr/share/doc/php-common/copyright
和包含的 php7.0-mysql
/usr/lib/php/20151012/mysqli.so
/usr/lib/php/20151012/mysqlnd.so
/usr/lib/php/20151012/pdo_mysql.so
/usr/share/bug/php7.0-mysql/control
/usr/share/bug/php7.0-mysql/script
/usr/share/doc/php7.0-mysql
/usr/share/lintian/overrides/php7.0-mysql
/usr/share/php7.0-mysql/mysql/mysqli.ini
/usr/share/php7.0-mysql/mysql/mysqlnd.ini
/usr/share/php7.0-mysql/mysql/pdo_mysql.ini
自从:
whereis locates the binary, source and manual files for the specified command names. The supplied names are first
stripped of leading pathname components and any (single) trailing extension of the form .ext (for example: .c) Prefixes
of s. resulting from use of source code control are also dealt with. whereis then attempts to locate the desired pro‐
gram in the standard Linux places, and in the places specified by $PATH and $MANPATH.
并且php-mysql
不是命令,您的输出与预期一致。如果您尝试使用实际命令,例如phpquery
在安装 php-mysql 时安装的命令
您将获得:
$ whereis phpquery
phpquery: /usr/sbin/phpquery
总结
当你安装 php-mysql 时,应该安装所有这些包。如果像你说的那样没有安装,你可以
sudo apt-get install php-common php7.0-common php7.0-mysql
安装 php-mysql 元包安装的所有包。
资料来源:
man whereis