在PHP中mysql_connect模塊已經逐漸被棄用,我在搭建環境時也沒有再安裝mysql擴展,可是今天在維護一個老項目時,出現報錯php
Fatal error: Uncaught Error: Call to undefined function mysql_connect()
因而google一下,發現若是php和mysql都已經安裝完成了,可使用phpize工具手動編譯生成mysql.so擴展來解決html
下面是操做步驟:
1.進入php源碼的ext/mysql目錄mysql
cd /usr/local/src/php-5.6.29/ext/mysql/
2.運行phpize,在該目錄下生成一個configure文件(php安裝目錄:/usr/local/php/)nginx
/usr/local/php/bin/phpize
3.運行configure,指明php-config文件位置(/usr/local/php/bin/php-config)和mysql安裝目錄(/usr/local/mysql/)web
./configure --with-php-config=/usr/local/php/bin/php-config --with-mysql=/usr/local/mysql/
4.編譯安裝,生成mysql.sosql
make && make install
5.修改php.ini文件,添加mysql.so擴展配置,保存退出php-fpm
extension=mysql.so
6.重啓php-fpm工具
service php-fpm restart
7.測試,在web目錄下添加php文件,如/usr/local/nginx/html/mysql.php測試
<?php $con = mysql_connect('localhost','root',''); if($con){ die('ok'); }else{ die('Could not connect: ' . mysql_error()); }
訪問URL,如:http://192.168.8.9/mysql.php
顯示ok,則配置成功優化