Debian 下 PHP7 编译安装和 MySQL支持
2017-06-26 tech linux php mysql 5 mins 1799 字
在 php7 环境中,编译和支持MySQL这一块把我折腾的蛮辛苦的,相信不少人也同样遇到,记录一下这个坑。
不知道从哪一版本开始,PHP不在希望使用mysql的库来支持mysql的连接,启用了mysqlnd来支持,编译都没有了–with-mysql参数,只支持–with-mysqli和–with-pdo-mysql,可以通过查看configure的参数来知道:
./configure -help | grep mysql
--with-mysqli=FILE Include MySQLi support. FILE is the path
to mysql_config. If no value or mysqlnd is passed
--enable-embedded-mysqli
--with-mysql-sock=SOCKPATH
--with-pdo-mysql=DIR PDO: MySQL support. DIR is the MySQL base directory
If no value or mysqlnd is passed as DIR, the
--enable-mysqlnd Enable mysqlnd explicitly, will be done implicitly
--disable-mysqlnd-compression-support
Disable support for the MySQL compressed protocol in mysqlnd
--with-zlib-dir=DIR mysqlnd: Set the path to libz install prefix
可以看到,PHP希望使用mysqlnd来支持MySQL,所以参数可以这样写:
–enable-mysqlnd
–with-mysqli=mysqlnd
–with-pdo-mysql=mysqlnd
列一下我的 config 参数:
./configure --prefix /usr/share/php7 \
--enable-fpm \
--enable-mysqlnd \
--enable-gd-native-ttf \
--enable-mbstring \
--enable-zip \
--enable-calendar \
--enable-bcmath \
--enable-exif \
--enable-intl \
--enable-opcache \
--enable-shmop \
--enable-soap \
--enable-sockets \
--with-fpm-user=www-data \
--with-fpm-group=www-data \
--with-pcre-regex \
--with-kerberos \
--with-openssl \
--with-mcrypt \
--with-zlib \
--with-bz2 \
--with-curl \
--with-gd \
--with-jpeg-dir=/usr/include/jpeg8 \
--with-png-dir=/usr/include/libpng12 \
--with-gettext \
--with-gmp \
--with-mhash \
--with-pgsql \
--with-pdo-pgsql \
--with-mysqli \
--with-pdo-mysql=mysqlnd \
--with-xsl