怎样安装PHP的mysqli扩展

2016年8月23日 | 分类: 【技术】

【问题】

当在Linux下使用低版本PHP,phpMyAdmin 报错:

缺少 mysqli 扩展,请检查 PHP 配置。

参考:https://amon.org/php5217

【安装】

wget http://museum.php.net/php5/php-5.2.17.tar.gz && tar zxvf php-5.2.17.tar.gz
cd ext/mysqli
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
make
make install

输出(php-5.2.17):

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

【设置】

在 php.ini 文件中添加:

; [mysqli]
extension = "mysqli.so"

然后重启Apache即可加载。

【报错】

查看版本:

/usr/local/php/bin/php -v

报错:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/mysqli.so' - /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/mysqli.so: undefined symbol: client_errors in Unknown on line 0

参考:https://www.bt.cn/bbs/thread-9585-1-1.html

如果是mysql5.7的话是无法编译安装上php5.2的

那么得回到早先版本,比如试试5.6系列。

wget -c http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.42.tar.gz && tar -zxvf mysql-5.6.42.tar.gz && cd mysql-5.6.42
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make && make install

【参考】

参考:https://blog.csdn.net/l1028386804/article/details/50481892
参考:https://blog.csdn.net/kaizhu_Qin/article/details/17506217