Модуль mysqli
был представлен с версией PHP 5.0.0.
MySQL Native Driver был включён в PHP версии 5.3.0.
Большинство дистрибутивов Unix включает бинарные версии PHP, которые в дальнейшем могут быть установлены. Несмотря на то, что бинарные версии, как правило, собраны с включённой поддержкой модулей MySQL, может потребоваться установка дополнительных пакетов с библиотеками модулей. Убедитесь, что менеджер пакетов, идущий с выбранным дистрибутивом, позволяет установить такие пакеты.
К примеру, на Ubuntu пакет php5-mysql
устанавливает
модули ext/mysql, ext/mysqli, и pdo_mysql. В CentOS
пакет php-mysql
также устанавливает три этих модуля.
Конечно, вы всегда можете собрать PHP из исходного кода. Сборка PHP из исходного кода позволяет выделить только те модули MySQL (а также клиентские библиотеки для каждого из модулей), которые требуется использовать.
Рекомендуется использовать библиотеку MySQL Native Driver, так как она повышает производительность и даёт доступ к функциям, недоступным при использовании MySQL Client Library. Смотрите Что такое MySQL Native Driver в PHP? для ознакомления с возможностями MySQL Native Driver.
Под /path/to/mysql_config
подразумевается расположение
программы mysql_config
, поставляемой вместе с MySQL
Server.
Версия PHP | По умолчанию | Опции настройки: mysqlnd | Опции настройки: libmysqlclient |
Список изменений |
---|---|---|---|---|
5.4.x и выше | mysqlnd | --with-mysqli | --with-mysqli=/path/to/mysql_config | по умолчанию mysqlnd |
5.3.x | libmysqlclient | --with-mysqli=mysqlnd | --with-mysqli=/path/to/mysql_config | mysqlnd поддерживается |
5.0.x, 5.1.x, 5.2.x | libmysqlclient | Недоступно | --with-mysqli=/path/to/mysql_config | mysqlnd не поддерживается |
Необходимо отметить, что существует возможность свободно перемешивать
модули MySQL и клиентские библиотеки. Например, можно
активировать модуль MySQL, позволяющий использовать
MySQL Client Library (libmysqlclient), и при этом настроить модуль
mysqli
для использования MySQL Native Driver.
Таким образом, возможны любые перестановки модулей и клиентских библиотек.
В Windows DLL php_mysqli.dll должен быть включён в php.ini.
Как и при включении любого модуля PHP (например, php_mysqli.dll),
директива PHP extension_dir должна устанавливать каталог,
в котором находятся модули PHP. Смотрите также раздел о самостоятельной установке PHP в Windows.
Пример значения extension_dir
- c:\php\ext.
Замечание:
Если при запуске веб-сервера возникает ошибка, подобная следующей:
"Unable to load dynamic library './php_mysqli.dll'"
, это происходит потому, что файл php_mysqli.dll не может быть найден системой.