關(guān)于php與MySQL之間的工作機(jī)制,今天蛋疼地考慮php編譯安裝時(shí)不添加--with-mysql參數(shù),是否可以實(shí)現(xiàn)mysql_connect()函數(shù)。
從網(wǎng)站建設(shè)到定制行業(yè)解決方案,為提供網(wǎng)站建設(shè)、做網(wǎng)站服務(wù)體系,各種行業(yè)企業(yè)客戶提供網(wǎng)站建設(shè)解決方案,助力業(yè)務(wù)快速發(fā)展。創(chuàng)新互聯(lián)將不斷加快創(chuàng)新步伐,提供優(yōu)質(zhì)的建站服務(wù)。
第一次編譯只是簡(jiǎn)單的
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc make && make install
mysql_connect()果然使用不了,本來想yum安裝php-mysql,想著好久沒有擴(kuò)展編譯。
于是又開始折騰了。
cd ext/mysql /usr/local/php/bin/phpize ./configure -with-php-config=/usr/local/php/bin/php-config --with-mysql=/usr/local/mysql
接著在配置文件php.ini添加extension,果斷遇到報(bào)錯(cuò)。
NOTICE: PHP message: PHP Warning: PHP Startup: Invalid library (maybe not a PHP library) '/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/mysql.so' in Unknown on line 0
折騰著extension,extension_dir兩個(gè)選項(xiàng),各種組合都使用過了。只好上搜索引擎了,兩個(gè)小時(shí)后還是沒有在網(wǎng)上找到能解決的方案。這時(shí)把注意力想到php安裝環(huán)節(jié),以上的php已經(jīng)是第二安裝了。之前只做過刪除安裝目錄,源碼包的文件繼續(xù)使用之前解壓出來的。
rm -rf /usr/local/php
然后,再來一次
rm src -rf (記性太差了,這次忘記刪除安裝目錄了/usr/local/php) tar zxvf php-5.x.x.tar.gz cd php-5.x.x ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc make && make install
cd ext/mysql /usr/local/php/bin/phpize ./configure -with-php-config=/usr/local/php/bin/php-config --with-mysql=/usr/local/mysql
由于安裝目錄沒有刪除,配置文件就沒有動(dòng)過了。
測(cè)試,成功。
結(jié)論:編譯安裝記得在刪除src目錄或者make clean命令