Установка модуля mysql для php

Установка

Расширение mysqli было представлено с версией PHP 5.0.0. MySQL Native Driver был включен в PHP версии 5.3.0.

Установка для Linux

Большинство дистрибутивов Unix включает бинарные версии PHP, которые в дальнейшем могут быть установлены. Несмотря на то, что бинарные версии, как правило, собраны с включенной поддержкой расширений MySQL, может потребоваться установка дополнительных пакетов с библиотеками расширений. Убедитесь, что менеджер пакетов, идущий с выбранным дистрибутивом, позволяет установить такие пакеты.

В случае, если ваш Unix дистрибутив не поставляется с бинарным пакетом PHP с поддержкой расширения mysqli, то необходимо собрать PHP из исходного кода. Сборка PHP из исходного кода позволяет выделить только те расширения MySQL (а также клиентские библиотеки для каждого из расширений), которые требуется использовать.

Рекомендуется использовать MySQL Native Driver, в результате повышается производительность и имеется доступ к функциям, недоступным при использовании MySQL Client Library. См. Что такое MySQL Native Driver в PHP? для ознакомления с возможностями MySQL Native Driver.

Под /path/to/mysql_config подразумевается расположение программы mysql_config, поставляемой вместе с MySQL Server.

Вспомогательная таблица времени компиляции mysqli

Версия PHP По умолчанию Опции настройки: mysqlnd Опции настройки: libmysqlclient Список изменений
5.0.x, 5.1.x, 5.2.x libmysqlclient Недоступно —with-mysqli=/path/to/mysql_config
5.3.x libmysqlclient —with-mysqli=mysqlnd —with-mysqli=/path/to/mysql_config mysqlnd поддерживается
5.4.x mysqlnd —with-mysqli —with-mysqli=/path/to/mysql_config mysqlnd по умолчанию

Необходимо отметить, что существует возможность свободно перемешивать расширения MySQL и клиентские библиотеки. Например, можно активировать расширение MySQL, позволяющее использовать MySQL Client Library (libmysqlclient), и при этом настроить расширение mysqli для использования MySQL Native Driver. Таким образом, возможны любые перестановки расширений и клиентских библиотек.

Приведенный ниже пример настраивает расширение MySQL для использования MySQL Client Library, а расширения mysqli и PDO MYSQL для работы с MySQL Native Driver:

./configure --with-mysql=/usr/bin/mysql_config \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd [other options]

Установка для Windows

Для Windows PHP в большинстве случаев устанавливается с помощью установщика.

PHP 5.0, 5.1, 5.2

После установки PHP необходимо произвести настройку для включения расширения mysqli и определения используемой им клиентской библиотеки.

Читайте также:  Php code plugin in wordpress

Расширение mysqli не включено по умолчанию, а следовательно в php.ini необходимо указать файл DLL php_mysqli.dll . Для этого вам необходимо найти файл php.ini (обычно расположен в c:\php ) и убедиться, что вы сняли знак комментирования («;») в начале строки extension=php_mysqli.dll, в разделе [PHP_MYSQLI].

Также, если вы хотите использовать MySQL Client Library с mysqli, то вам необходимо убедиться, что PHP может получить доступ к файлу клиентской библиотеки. MySQL Client Library включен в дистрибутив Windows PHP в виде файла libmysql.dll . Этот файл должен быть доступен в переменной окружения Windows PATH для того, чтобы его можно было успешно загрузить. По ссылке «Как мне добавить мою PHP директорию в Windows PATH» находится статья с информацией о том, как это сделать. Если системная директория Windows прописана в PATH , то можно скопировать libmysql.dll в системную директорию Windows (обычно c:\Windows\system ). Однако такой путь не рекомендуется.

При включении любого расширения PHP (например php_mysqli.dll ), директива PHP extension_dir должна содержать путь к директории, где находятся расширения PHP. Смотрите также Инструкции по Самостоятельной Установке для Windows. Для примера в PHP 5 значением extension_dir является c:\php\ext .

Замечание:

Если при загрузке сервера появляется следующее сообщение: «Unable to load dynamic library ‘./php_mysqli.dll'», то система не может найти файлы php_mysqli.dll и/или libmysql.dll .

PHP 5.3.0+

Для Windows, в версиях PHP 5.3 и старше, расширение mysqli использует MySQL Native Driver по умолчанию. Это значит, что вам не нужно беспокоиться о настройке доступа к файлу libmysql.dll .

Источник

Установка модуля mysql для php

Данный модуль устарел, начиная с версии PHP 5.5.0, и удалён в PHP 7.0.0. Используйте вместо него MySQLi или PDO_MySQL. Смотрите также инструкцию MySQL: выбор API. Альтернативы для данной функции:

Для компиляции просто используйте опцию конфигурации —with-mysql[=DIR], где необязательный параметр [DIR] указывает на директорию с установленным MySQL.

Несмотря на то, что модуль MySQL совместим с MySQL 4.1.0 и выше, он не поддерживает дополнительную функциональность, предоставляемую этими версиями. Для получения такой возможности воспользуйтесь модулем MySQLi.

Если вы хотите установить модуль mysql совместно с mysqli, то для избежания каких-либо конфликтов необходимо использовать одну и ту же клиентскую библиотеку.

Читайте также:  Gibdd perm ru index php

Установка на Linux-системы

Примечание: [DIR] является путём к файлам клиентской библиотеки MySQL (заголовкам и библиотекам), которые можно скачать с » MySQL.

Таблица компиляции ext/mysql по версиям PHP

PHP Версия По умолчанию Опции настройки: mysqlnd Опции настройки: libmysqlclient Список изменений
4.x.x libmysqlclient Недоступно —without-mysql для отключения MySQL включён по умолчанию, клиентские библиотеки MySQL входят в поставку PHP
5.0.x, 5.1.x, 5.2.x libmysqlclient Недоступно —with-mysql=[DIR] MySQL больше не включён по умолчанию, и клиентские библиотеки MySQL больше не входят в поставку PHP
5.3.x libmysqlclient —with-mysql=mysqlnd —with-mysql=[DIR] Стал доступен mysqlnd
5.4.x mysqlnd —with-mysql —with-mysql=[DIR] mysqlnd выбирается по умолчанию

Установка на Windows-системы

PHP 5.0.x, 5.1.x, 5.2.x

Поддержка MySQL больше не включена по умолчанию, поэтому для её включения необходимо подключить php_mysql.dll DLL внутри php.ini . Кроме этого, PHP понадобится доступ к клиентской библиотеке MySQL. Файл libmysql.dll поставляется в Windows дистрибутиве PHP, и для корректного общения PHP с MySQL, данный файл должен быть доступен в системном пути Windows PATH . О том как это сделать, смотрите FAQ «Как добавить мою PHP директорию в системный PATH на Windows?». Хотя копирование libmysql.dll в системную папку Windows также сработает (потому что системная папка находится по умолчанию в PATH ), это не рекомендуется.

Как и при включении любого другого модуля PHP (в том числе и php_mysql.dll ), директива extension_dir должна указывать на директорию, содержащую PHP-модули. Смотрите также Инструкции по ручной установке в Windows . Пример значения extension_dir для PHP 5: c:\php\ext

Замечание:

Если при старте веб-сервера происходит подобная ошибка: «Unable to load dynamic library ‘./php_mysql.dll'» , («Невозможно подгрузить динамическую библиотеку ‘./php_mysql.dll'»), то это случается из-за того, что на вашей системе не может быть найдена php_mysql.dll и/или libmysql.dll .

PHP 5.3.0+

MySQL Native Driver включён по умолчанию. В том числе php_mysql.dll , но без требования и использования libmysql.dll .

Замечания по установке MySQL

Сбои в работе PHP могут возникнуть при загрузке этого модуля вместе с модулем recode. За дополнительной информацией обращайтесь к разделу о модуле для recode.

Замечание:

Если вам требуется поддержка кодировок отличных от latin, (установленной по умолчанию), вам придётся установить внешнюю библиотеку libmysqlclient, скомпилированную с их поддержкой.

Источник

Читайте также:  Java plugin with firefox

Установка модуля mysql для php

Модуль mysqli был представлен с версией PHP 5.0.0. MySQL Native Driver был включён в PHP версии 5.3.0.

Установка для Linux

Большинство дистрибутивов 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.

Вспомогательная таблица времени компиляции mysqli

Версия 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

В 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 не может быть найден системой.

User Contributed Notes

Источник

Оцените статью