今天突然需要給php安裝乙個mysqli擴充套件,但是我到pecl pear去找so模組,沒有啊,坑爹呢,只有重新編譯php了
安裝時候需要加個引數
cd php-tar-dir/
./configure --mysqli=/you_mysql_install_directory/bin/mysql_config --some-other-option
其實不重灌的話也可以在php源資料夾下的ext/mysqli目錄下直接執行 /usr/local/php5/bin/phpize工具進行編譯
記得原來在編譯php的已經已經加上引數
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
可後來找了乙個,的確不存在mysqli.so,所以只能單獨來編譯mysqli了。
mysqli是優化過的mysql函式庫,mysql版本不能低於4.1.12
cd /root/lamp/php-5.2.3/ext/mysqli
#####進入到mysqli的目錄。
再用phpize生成configure檔案:
/usr/local/php/bin/phpize
configuring for:
php api version: 20041225
zend module api no: 20060613
zend extension api no: 220060519
#./configure --prefix=/usr/local/mysqli \
--with-php-config=/usr/local/php/bin/php-config \
--with-mysqli=/usr/local/mysql/bin/mysql_config
make
make test
make install
installing shared extensions: /usr/local/php/lib/php/extensions/debug-non-zts-20060613/
然後在/usr/local/lib/php.ini
extension=/usr/local/php/lib/php/extensions/debug-non-zts-20060613/mysqli.so
重新啟動apache即可看到已經載入mysqli成功。
測試mysqli執行狀況:
vim mysqli.php
/* check connection */
if (mysqli_connect_errno())
printf("host information: %s\n", $mysqli->host_info);
/* close connection */
$mysqli->close();
?>
source:
1 啟用mysqli擴充套件模組
從php 5.0開始,不僅可以使用早期的mysql資料庫擴充套件函式,而且還可以使用新的擴充套件mysqli技術實現與mysql資料庫的資訊交流。php的 mysqli擴充套件被封裝到乙個類中,它是一種物件導向的技術,只能在php 5和mysql 4.1 或更高的版本 環境中使用,i 表示改進,其執...
linux下php的mysqli擴充套件安裝
以前一直是在wamp的環境下開發的,很少接觸lamp開發,現在公司裡面需要用到lamp環境,接下來就需要對該環境多多學習了。今天在原有的php5.3的基礎上公升級為了php5.4版本,需要對環境進行一些修改,其中就涉及到了php模組的配置,wamp下直接在php.ini中啟用mysqli就行 去掉 ...
centos php7 安裝mysqli擴充套件心得
在新配伺服器時發現,php無法連線到mysql。通過phpinfo發現。根本沒有顯示mysqli的相關配置。經過一系列研究。總結了下。第一步 在phpinfo裡沒有mysqli配置,原因是安裝php7時沒有configure mysqli 安裝php方法 wget tar zxvf php 7.1....