php5模組pdo、pdo_mysql、mysqli的新增

andyann發表於2011-09-05
php5模組pdo、pdo_mysql、mysqli的新增

一、環境
LAMP都是原始碼安裝,PHP安裝的時候沒有配置pdo_mysql和mysqli,pdo是php5預設帶的。
PHP5的原始碼都在,只需要把php5的模組功能擴充套件就可以了。

php原始碼目錄:/usr/local/src/php-5.2.10
php安裝目錄:/usr/local/php/
php原始碼配置檔案:/usr/local/php/bin/php-config
php程式配置檔案:/usr/local/php/etc/php.ini

二、模組的編譯安裝
[root@anpc ~] cd /usr/local/src/php-5.2.10/ext/pdo

[root@anpc pdo] /usr/local/php/bin/phpize
[root@anpc pdo] ./configure --with-php-config=/usr/local/php/bin/php-config
[root@anpc pdo] make
[root@anpc pdo] make test
[root@anpc pdo] make install

[root@anpc ~] cd /usr/local/src/php-5.2.10/ext/pdo_mysql
[root@anpc pdo_mysql] /usr/local/php/bin/phpize
[root@anpc pdo_mysql] ./configure --with-php-config=/usr/local/php/bin/php-config  --with-pdo-

mysql=/usr/local/mysql
[root@anpc pdo_mysql] make
[root@anpc pdo_mysql] make test
[root@anpc pdo_mysql] make install

[root@anpc ~] cd /usr/local/src/php-5.2.10/ext/mysqli
[root@anpc mysqli] /usr/local/php/bin/phpize
[root@anpc mysqli] ./configure --with-php-config=/usr/local/php/bin/php-config --with-

mysqli=/usr/local/mysql/bin/mysql_config
[root@anpc mysqli] make
[root@anpc mysqli] make test
[root@anpc mysqli] make install

備註:
注意安裝時目錄的位置一定要正確,不然模組不能載入。
命令/usr/local/php/bin/phpize必須在安裝的目錄執行。
 

安裝完後會產生三個so模組:

/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo.so
/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo_mysql.so
/usr/local/php/lib/php/extensions/no-debug-zts-20060613/mysqli.so


三、PHP配置檔案的配置

更改php.ini配置,新增模組:
vi /usr/local/php/etc/php.ini
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo.so
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo_mysql.so
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20060613/mysqli.so

服務重啟:
service mysqld restart
service apached restart

四、環境測試:

1、php5環境檢視(建立php函式):

vi phpinfo.php
phpinfo();
?>

訪問phpinfo.php頁面,檢視模組擴充套件存不存在:
http://127.0.0.1/phpinfo.php

備註:
如果函式不能使用,更改配置開放函式的使用許可權。
[root@anpc ~] vi /usr/local/php/etc/php.ini
disable_functions = phpinfo,passthru,.....
刪除phpinfo這個函式儲存即可。
[root@anpc ~] service apached restart

2、mysqli連線測試(建立網頁測試連線)。

vi mysqlidb.php
$mysqli = new mysqli("localhost", "dbusername", "dbpassword", "dbname");
/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
printf("Host information: %s\n", $mysqli->host_info);
/* close connection */
$mysqli->close();
?>

訪問建立的php測試頁:
http://127.0.0.1/mysqlidb.php
 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24070945/viewspace-706684/,如需轉載,請註明出處,否則將追究法律責任。

相關文章