mysqli擴展在PHP5.0.0中被引入。Mysql Native驅動(dòng)在PHP5.3.0版本中被引入。
通用的Unix分發(fā)包中會(huì )包含PHP可安裝的二進(jìn)制版本。雖然這些二進(jìn)制版本通常會(huì )被構建為支持啟用mysql擴展的, 蠶食擴展庫自身可能需要依賴(lài)其他附加包的安裝。因此對包管理的檢查會(huì )比選擇可用的發(fā)行版本更重要。
除非你的Unix分發(fā)包包含的PHP二進(jìn)制包的mysqli擴展可用,否則你就需要 從源碼構建PHP。如果你希望使用mysql擴展,從PHP源代碼構建允許你這樣做,并且可以指定每個(gè)擴展 使用什么客戶(hù)端庫。
使用Mysql Native Driver 是推薦的選項,會(huì )提升性能并且會(huì )帶來(lái)一些Mysql Client Library不允許的訪(fǎng)問(wèn)特性。 什么是Mysql自然驅動(dòng)器?中對Mysql Native Driver 的優(yōu)勢做了一個(gè)簡(jiǎn)要概述。
/path/to/mysql_config代表了要用來(lái)編譯mysql客戶(hù)端/連接mysql服務(wù)端的mysql_config程序位置。
| PHP 版本 | 默認 | 配置選項: mysqlnd | 配置選項: libmysql | 更新日志 |
|---|---|---|---|---|
| 5.0.x, 5.1.x, 5.2.x | libmysql | 不適用 | --with-mysqli=/path/to/mysql_config | |
| 5.3.x | libmysql | --with-mysqli=mysqlnd | --with-mysqli=/path/to/mysql_config | mysqlnd is now supported |
| 5.4.x | mysqlnd | --with-mysqli | --with-mysqli=/path/to/mysql_config | mysqlnd is now the default |
請注意Mysql擴展和客戶(hù)端庫是可以自由混合的。比如,可以使用libmysql這個(gè)mysql客戶(hù)端庫來(lái)啟用Mysql擴展,使用 Mysql Native Driver來(lái)配置mysqli擴展。所有的擴展和客戶(hù)端庫的順序都是可能的。
下面的示例使用Mysql Client Library(libmysql)構建了mysql擴展,并且mysqli和 PDO Mysql擴展使用Mysql Native Dirver(作為客戶(hù)端庫):
./configure --with-mysql=/usr/bin/mysql_config --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd[other options]
聯(lián)系客服