Ошибка, которая появляется из ниоткуда
Вы обновляете PHP.
Или переносите сайт.
Или запускаете новый VPS и устанавливаете WordPress с нуля.
Сначала всё выглядит нормально — пока внезапно это не перестаёт быть так.
И вдруг вместо главной страницы вы видите следующее:
Похоже, что в вашей установке PHP отсутствует расширение MySQL, которое требуется WordPress.
Это одно из тех сообщений, которые звучат просто… но на практике всё редко бывает так легко.
В старых руководствах объяснение почти всегда одинаковое:
«Установите расширение MySQL.»
На самом деле, особенно в современных средах (PHP 8.2, 8.3, 8.4), эта ошибка обычно почти не связана с отсутствием расширения — чаще она возникает из-за того, как настроен PHP, как загружаются модули или как разделены окружения.
Иногда она появляется:
- сразу после обновления до PHP 8.3
- после перехода с Apache на Nginx
- во время пересборки Docker
- после миграции сервера
- когда CLI и FPM используют разные версии PHP
А иногда — даже после
Быстрая диагностика за 60 секунд
Прежде чем переустанавливать что-то или менять конфигурационные файлы, остановитесь на минуту. Когда появляется сообщение your php installation appears to be missing the mysql extension, первая реакция — сразу начать устанавливать пакеты. На практике это часто только усугубляет проблему.
Задача на самом деле простая: определить, действительно ли ошибка wordpress missing mysql extension вызвана отсутствием расширения, или же PHP загружает не то окружение, которое вы ожидаете.
В современных средах, особенно с PHP 8.2 или 8.3, проблема чаще связана с контекстом запуска, а не с отсутствием самого расширения.
1. Проверьте активную версию PHP
Начните с базового — какая версия PHP фактически используется?
Если у вас есть доступ по SSH:
php -v
Эта команда показывает версию PHP для CLI. Это полезно, но не окончательно. Ваш веб-сервер может использовать совершенно другую сборку PHP.
Чтобы проверить версию PHP, используемую веб-сервером, создайте временный файл info.php в корневой директории WordPress:
<?php phpinfo();
Откройте его в браузере и проверьте:
- версию PHP
- путь к Loaded Configuration File
- Server API (Apache, FPM/FastCGI и т.д.)
Довольно часто можно увидеть PHP 8.3 в CLI, тогда как в браузере отображается PHP 8.1. В такой ситуации ошибка php missing mysql extension wordpress может вообще не иметь отношения к MySQL. Чаще всего дело просто в том, что используется другая версия PHP.
2. Убедитесь, что загружены MySQLi или PDO_MySQL
В выводе phpinfo() найдите:
mysqlipdo_mysql
Если ни один из них не отображается, значит в PHP действительно отсутствует поддержка MySQL, и сообщение your php installation appears to be missing the mysql extension технически верно.
Если же они присутствуют, ситуация становится интереснее. WordPress всё равно может показывать ошибку missing mysqli extension wordpress, даже если расширение установлено. Обычно это указывает не на отсутствие модуля, а на проблему с конфигурацией.
Через SSH также можно выполнить:
php -m | grep -i mysql
Однако эта команда проверяет только модули CLI. Веб-сервер может использовать совершенно другой набор расширений.
3. Проверьте загруженный файл php.ini
На странице phpinfo() найдите строку:
Loaded Configuration File
Убедитесь, что указанный путь соответствует той версии PHP, которую фактически использует ваш веб-сервер.
Затем найдите параметр:
extension_dir
Если extension_dir указывает на неправильную директорию или на сборку другой версии PHP, такие расширения, как mysqli или pdo_mysql, могут существовать на диске, но не загружаться во время выполнения. В таких случаях fix mysql extension error wordpress не означает установку новых модулей. Речь идёт о корректной настройке PHP и указании правильной директории расширений.
На этом этапе обычно становится понятен один из трёх вариантов:
- Расширение вообще не установлено.
- Расширение установлено, но не включено для текущей среды выполнения.
- CLI и веб-версия PHP используют разные конфигурации.
Только после того, как вы поймёте, какой из этих сценариев относится к вашей ситуации, стоит переходить дальше. Иначе есть риск решать совсем не ту проблему.
Почему эта ошибка вводит в заблуждение в современных версиях PHP
На первый взгляд сообщение your php installation appears to be missing the mysql extension звучит довольно точно. Оно подразумевает, что чего-то не хватает и достаточно просто установить это — и проблема будет решена.
В 2026 году такое предположение часто оказывается неверным.
Оригинальное расширение mysql уже много лет считается устаревшим и полностью удалено из современных версий PHP. WordPress больше его не использует. Вместо этого он работает с mysqli или pdo_mysql, которые входят в стандартные сборки PHP 8.x.
Поэтому когда сегодня WordPress показывает ошибку wordpress missing mysql extension, это редко означает «вы забыли установить поддержку MySQL». Чаще всего это сигнал о том, что PHP не смог загрузить нужный модуль во время выполнения.
Это важное различие.
Читайте также: Как улучшить Time to First Byte (TTFB) для вашего сайта на WordPress

MySQL vs MySQLi: ловушка в названии
В тексте ошибки до сих пор упоминается «MySQL extension», из-за чего многие разработчики начинают искать неправильный пакет. Они пытаются установить mysql, которого уже нет в PHP 8.2 и 8.3.
На самом деле WordPress требуется одно из следующих расширений:
mysqli- или
pdo_mysql
Если ни одно из них недоступно для активной среды PHP, вы можете увидеть варианты ошибок вроде missing mysqli extension wordpress или php missing mysql extension wordpress.
Но формулировка самого сообщения об ошибке не менялась вместе с развитием PHP. Именно отсюда и возникает путаница.
PHP 8.x и проблема среды выполнения
Современные конфигурации PHP редко бывают простыми.
У вас может быть:
- несколько установленных версий PHP
- отдельные пулы PHP-FPM
- контейнеризированные развертывания
- кастомные сборки PHP
- разные файлы
php.iniдля CLI и веб-сервера
В таких средах fix mysql extension error wordpress означает не загрузку какого-то модуля. Речь идёт о том, чтобы нужная среда выполнения PHP загружала правильное расширение из корректной директории.
Например:
- В CLI может быть загружено
mysqli - Но в веб-среде выполнения — нет
- Или PHP-FPM может указывать на устаревшую директорию
extension_dir - Или при пересборке контейнера могло не установиться
pdo_mysql
Во всех этих случаях появляется одно и то же сообщение об ошибке.
Именно поэтому слепая установка пакетов редко является правильным первым шагом. Настоящая проблема почти всегда связана с несоответствием конфигурации.
WordPress, PHP и база данных должны работать в одном и том же конфигурационном контексте. Когда один из элементов меняется — особенно при обновлении PHP до версии 8.3 — система незаметно ломается, а WordPress показывает это общее сообщение об ошибке.
Когда дело вообще не в расширении
Есть ещё один нюанс, который легко упустить из виду.
Иногда расширение загружается корректно, но WordPress всё равно не может подключиться к базе данных. В таких случаях сообщение может появляться потому, что слой работы с базой данных завершается с ошибкой ещё на раннем этапе загрузки.
Это может происходить, когда:
- неверно указаны данные для подключения к базе данных
- изменился путь к сокету MySQL
- MariaDB работает по TCP, тогда как PHP ожидает Unix-сокет
- служба базы данных не запущена
- SELinux блокирует доступ
С точки зрения WordPress соединение с базой данных не устанавливается. И в качестве предположения по умолчанию система сообщает об отсутствии поддержки MySQL.
Другими словами, текст ошибки не всегда отражает реальную причину проблемы. Он описывает лишь её симптом.
Понимание этого контекста меняет подход к решению проблемы. Вместо повторной установки расширений вы начинаете отслеживать цепочку выполнения.
И именно здесь начинается настоящая диагностика.
Читайте также: Как очистить кэш WordPress, если изменения не отображаются
Где происходит сбой соединения
Когда WordPress показывает сообщение your php installation appears to be missing the mysql extension, это означает, что на каком-то этапе цепочки выполнения происходит сбой. Самый простой способ понять причину — посмотреть на эту цепочку напрямую.
На высоком уровне процесс выглядит так:
WordPress Core
↓
PHP Runtime (Web SAPI / PHP-FPM / Apache Module)
↓
MySQL Extension (mysqli or pdo_mysql)
↓
Database Engine (MySQL 8 / MariaDB)
Если любое звено этой цепочки работает некорректно, WordPress не сможет инициализировать слой работы с базой данных. В результате может появиться ошибка wordpress missing mysql extension, даже если расширение технически присутствует.
Давайте разберёмся, где чаще всего возникает этот сбой.
1. Расширение не установлено
Это самый простой сценарий. PHP был установлен без mysqli или pdo_mysql.
Это может произойти, если:
- сборка PHP из исходников без
mysqlnd - использование минимальных контейнерных образов
- ручная установка PHP на VPS без пакета MySQL
В таком случае php -m и phpinfo() не будут показывать mysqli или pdo_mysql. Ошибка в этом случае действительно отражает проблему.
2. Расширение установлено, но не включено
Здесь расширение присутствует на диске, но не загружается.
Чаще всего это происходит по следующим причинам:
extension=mysqliотсутствует вphp.ini- расширение скомпилировано, но не активировано
- для CLI и веб-сервера используются разные файлы
php.ini - настроен неверный
extension_dir
Именно здесь возникает множество случаев php отсутствует расширение mysql wordpress. Разработчики видят файл mysqli.so в папке расширений и предполагают, что всё работает корректно. Однако PHP-FPM при этом вообще не загружает его.
3. CLI и Web PHP — это разные среды
Это одна из самых частых причин в современных конфигурациях.
Вы выполняете:
php -m | grep -i mysql
И видите mysqli.
Всё выглядит правильно.
Но веб-сервер использует совершенно другую версию PHP. В этой версии поддержка MySQL может быть не включена.
В такой ситуации проблема заключается не в отсутствии поддержки MySQL. Причина — несоответствие среды выполнения.
Особенно часто это происходит после:
- обновления до PHP 8.3
- смены панели управления хостингом
- включения MultiPHP в cPanel
- миграции с Apache на Nginx
В результате среды CLI и веб-сервера незаметно начинают расходиться.
4. Расширение загружается, но уровень базы данных даёт сбой
Это более тонкий случай.
mysqli отображается в phpinfo().
PHP работает корректно.
Пути конфигурации выглядят правильно.
Тем не менее WordPress всё равно выводит сообщения типа исправить ошибку расширения mysql wordpress.
В этом случае сбой происходит на более низком уровне:
- неверный путь к сокету
- неправильно указан хост в
wp-config.php - служба базы данных не запущена
- MariaDB была обновлена и изменила настройки по умолчанию
- проблемы с правами доступа к файлу сокета
С точки зрения WordPress соединение обрывается на этапе начальной загрузки. Сообщение об ошибке предполагает, что проблема связана с уровнем расширения.
Технически это не так.
5. Контейнерные и облачные среды
В средах Docker или облачных развёртываниях сбой может происходить ещё на этапе сборки.
Например:
- базовый образ не содержит
pdo_mysql - команда
docker-php-ext-install mysqli pdo_mysqlбыла пропущена - при пересборке слой PHP был заменён, а конфигурация — нет
- переменные окружения изменили параметры подключения к базе данных
В таких случаях ошибка wordpress отсутствует расширение mysql может появиться после обновления инфраструктуры, которое на первый взгляд никак не связано с PHP.
Именно поэтому эта ошибка редко бывает изолированной. Почти всегда она зависит от контекста.
Когда вы понимаете всю цепочку, вы перестаёте воспринимать это как простую проблему установки. Вместо этого вы определяете, на каком уровне произошли изменения.
Такой подход делает исправление системным и последовательным, а не реакцией на симптом.
Реальные причины ошибки расширения MySQL
К этому моменту вы, скорее всего, уже определили, где именно происходит сбой в цепочке. Теперь возникает практический вопрос: что именно нужно исправить?
Ответ полностью зависит от вашей среды. Конфигурация на общем хостинге работает совсем иначе, чем на собственном VPS или в Docker-развёртывании. Внешне ошибка может быть одинаковой, но её причина в каждом случае различается.
Рассмотрим самые распространённые сценарии.
Среды общего хостинга
На общем хостинге, особенно при использовании cPanel или аналогичных панелей управления, проблема часто связана с переключением версии PHP.
Многие хостинг-провайдеры позволяют использовать несколько версий PHP одновременно. Вы можете обновить PHP до версии 8.3 в панели, но сам домен при этом может оставаться привязанным к более старому обработчику.
Если на общем хостинге появляется ошибка wordpress отсутствует расширение mysql, проверьте:
- какая версия PHP назначена для домена
- включены ли
mysqliиpdo_mysqlв списке расширений PHP - применяет ли MultiPHP Manager правильный обработчик
В cPanel это обычно включает следующие действия:
- Открыть Select PHP Version
- Проверить, что активна версия PHP 8.2 или 8.3
- Убедиться, что отмечены
mysqliиmysqlnd
После сохранения обновите сайт. Если среда выполнения переключилась корректно, ошибка исчезнет сразу.
Если этого не произошло, возможно, домен всё ещё привязан к другому пулу PHP.
Именно здесь регулярное обслуживание сайтов на WordPress помогает предотвратить незаметные расхождения в конфигурации. Небольшие несовпадения версий легко пропустить, пока они не приведут к сбою на рабочем сайте.
Настройки VPS и выделенных серверов (Ubuntu / Debian)
В среде VPS проблема обычно проявляется более явно.
Если PHP был установлен без поддержки MySQL, это можно проверить командой:
php -m | grep -i mysql
Если ничего не отображается, установите необходимый модуль:
sudo apt update
sudo apt install php-mysql
После этого перезапустите соответствующий сервис:
sudo systemctl restart php8.3-fpm
Или, если используется Apache:
sudo systemctl restart apache2
Но именно здесь многие допускают ошибку.
Они перезапускают неправильную версию PHP-FPM.
Если установлено несколько версий PHP, убедитесь, что перезапускаете именно тот сервис, который использует ваш веб-сервер. Перезапуск php8.2-fpm, когда Nginx работает с php8.3-fpm, ничего не изменит.
Одного такого несоответствия достаточно, чтобы вызвать ошибки php отсутствует расширение mysql wordpress, даже если само расширение установлено.
Несоответствие Nginx и PHP-FPM
В современных конфигурациях, особенно после обновления PHP, в файлах настроек иногда продолжают оставаться ссылки на старые сокеты.
Например:
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
Если система обновилась до PHP 8.3, но Nginx всё ещё указывает на сокет 8.1, WordPress запускается в неправильной среде выполнения.
В таком сценарии:
- в CLI отображается
mysqli - в PHP 8.3 поддержка MySQL включена
- а веб-сервер продолжает использовать 8.1 без неё
Появляется ошибка, и выглядит так, будто расширения не хватает.
На самом деле это проблема указателя в конфигурации.
Docker и контейнерные развёртывания
Контейнерные среды добавляют ещё один уровень сложности.
Если вы собираете проект на основе официального образа PHP, расширения MySQL не всегда включены по умолчанию. Их необходимо явно добавить на этапе сборки:
RUN docker-php-ext-install mysqli pdo pdo_mysql
Если эта строка была удалена, пропущена или переопределена при пересборке, следующее развёртывание может внезапно вызвать ошибку в вашей установке php отсутствует расширение mysql.
Чаще всего это происходит после:
- обновления базового образа
- перехода с образов Debian на Alpine
- изменений в CI/CD-конвейере
Расширение при этом никто вручную не удалял — контейнер просто был пересобран без него.
В сложных средах, где используются API-слои, SaaS-системы или интеграция ИИ в современные веб-платформы, такие побочные эффекты пересборки встречаются довольно часто. WordPress может быть лишь одним из компонентов более крупной архитектуры.
Мульти-установки PHP
Этому стоит уделить отдельное внимание.
На многих серверах используются:
/usr/bin/php/usr/local/bin/php- несколько пулов FPM
- отдельные пулы для каждого домена
Вы можете убедиться, что mysqli установлен глобально, но активный пул может использовать другой файл php.ini.
Именно здесь становится важен опыт профессиональной разработки сайтов на WordPress. Чтобы определить, какая именно среда выполнения PHP обрабатывает запрос, нужно анализировать конфигурацию пулов, а не просто проверять подключённые модули.
Когда конфигурации с несколькими версиями начинают расходиться, WordPress не разбирается в причинах. Он просто сообщает, что расширение отсутствует.
Во всех этих сценариях прослеживается один и тот же шаблон. Проблема редко заключается в установке чего-то нового. Гораздо чаще речь идёт о том, чтобы нужная среда выполнения загружала правильное расширение в рамках корректной конфигурации.
Чем сложнее инфраструктура, тем незаметнее может быть такое несоответствие.
Читайте также: 5 шагов для добавления 301 редиректа в WordPress через htaccess (полное практическое руководство)
Таблица диагностики: симптом → причина → решение
Ниже приведена практическая таблица с наиболее распространёнными вариантами ошибки в вашей установке php отсутствует расширение mysql.
| Симптом | Вероятная причина | Что проверить | Практическое решение |
|---|---|---|---|
php -m не показывает модули MySQL | Расширение MySQL не установлено | Список модулей CLI | Установить php-mysql или включить mysqli / pdo_mysql |
php -m показывает mysqli, но в браузере его нет | Несоответствие между CLI и веб-версией PHP | phpinfo() и версия CLI | Синхронизировать версию PHP-FPM с веб-сервером |
mysqli виден в phpinfo(), но WordPress не работает | Неверный extension_dir | extension_dir в php.ini | Указать правильный путь к директории и перезапустить FPM |
| Ошибка появилась после обновления PHP | Nginx или Apache указывает на старый сокет | Конфигурацию веб-сервера | Обновить fastcgi_pass или обработчик PHP |
| Ошибка появилась после миграции | Версия PHP была незаметно переключена | Панель хостинга / MultiPHP | Назначить правильную версию PHP для домена |
| Ошибка внутри Docker | Расширение не установлено при сборке | Dockerfile | Добавить docker-php-ext-install mysqli pdo_mysql и пересобрать контейнер |
| Соединение с базой данных всё ещё не работает | Несоответствие сокета или хоста | wp-config.php DB_HOST | Указать правильный TCP-хост или путь к сокету |
| Ошибка появляется случайно | Активно несколько пулов PHP | Конфигурации пулов FPM | Проверить активный пул и перезапустить нужную службу |
Эта таблица отражает наиболее частые причины возникновения ошибки wordpress отсутствует расширение mysql в современных средах PHP 8.x.
Обратите внимание на важную деталь.
Более чем в половине этих случаев расширение технически присутствует. Проблема возникает из-за контекста — неправильной среды выполнения, неверного файла конфигурации или перезапуска не того сервиса.
Именно поэтому простая переустановка пакетов часто ничего не решает.
Если на этом этапе ни один из приведённых выше пунктов не соответствует вашей ситуации, стоит посмотреть на реальные примеры поведения системы, а не только на теорию.
Давайте рассмотрим, как это выглядит на практике.
Реальный случай: после обновления до PHP 8.3
Типичная ситуация выглядит так.
Сервер работает на PHP 8.1 без каких-либо проблем.
Всё функционирует нормально.
Администратор обновляет систему до PHP 8.3.
Сразу после обновления WordPress выводит сообщение:
в вашей установке php отсутствует расширение mysql
Первая мысль — предположить, что в PHP 8.3 убрали поддержку MySQL.
Это не так.
Что на самом деле происходит во многих подобных случаях:
- PHP 8.3 был установлен корректно
mysqliбыл скомпилирован и доступен- Nginx по-прежнему указывал на старый сокет 8.1
- PHP-FPM 8.3 так и не был перезапущен
С точки зрения WordPress, на этапе начальной загрузки произошёл сбой слоя базы данных. В результате появилось стандартное сообщение об ошибке.
В CoDiCo мы неоднократно наблюдали такую ситуацию при переходе между версиями PHP. Исправление редко требовало установки новых компонентов — почти всегда нужно было просто синхронизировать уровни среды выполнения после обновления.
Как только веб-сервер начал указывать на правильный пул FPM и сервис был корректно перезапущен, ошибка исчезла мгновенно.
Неочевидные случаи, о которых легко забыть
Иногда возникают ситуации, когда на первый взгляд всё выглядит правильно. mysqli отображается в phpinfo(). Версия PHP соответствует той, которую должен использовать сервер. Данные для подключения к базе в wp-config.php выглядят корректно. И всё же WordPress продолжает сообщать в вашей установке php отсутствует расширение mysql.
В таких случаях проблема обычно скрыта глубже в стеке.
Одна из самых часто упускаемых причин — несоответствие сокета. На многих Linux-системах MySQL или MariaDB взаимодействуют через файл Unix-сокета, а не через TCP. Если путь к сокету изменился после обновления, PHP может продолжать загружать mysqli, но соединение установить не сможет. В результате WordPress выводит стандартное сообщение wordpress отсутствует расширение mysql, хотя само расширение работает полностью корректно.
Ещё одна незаметная проблема может появиться после обновления MariaDB. Методы аутентификации по умолчанию или параметры соединения могут тихо измениться. Если PHP ожидает одну конфигурацию, а сервер базы данных теперь требует другую, процесс согласования соединения завершается ошибкой на раннем этапе. На уровне приложения это выглядит как отсутствие поддержки MySQL. На самом деле это проблема аутентификации или транспорта.
SELinux также может создавать препятствия. В системах с усиленной безопасностью даже при включённом и корректно загруженном mysqli политики безопасности могут запрещать PHP доступ к сокету базы данных. Расширение присутствует, но среда выполнения не может его использовать. Сообщение об ошибке в этом случае вводит в заблуждение, но технически соответствует сбою при инициализации базы данных.
Собранные вручную версии PHP добавляют ещё один фактор. Если PHP был скомпилирован без mysqlnd или связан с несовместимой клиентской библиотекой, модуль может выглядеть установленным, но работать нестабильно. Такие случаи встречаются редко, однако стандартные шаги диагностики здесь не помогают, потому что проблема носит структурный характер.
Оркестрация контейнеров также усложняет ситуацию. В распределённых средах хост базы данных, указанный в wp-config.php, может по-разному разрешаться внутри контейнерной сети. Неправильно настроенное имя сервиса или переменная окружения могут нарушить подключение, и WordPress снова сообщит php отсутствует расширение mysql wordpress, хотя внутри контейнера расширение загружается корректно.
Во всех этих неочевидных случаях прослеживается одна и та же закономерность. Видимая ошибка редко отражает истинную причину. Она лишь сообщает, что WordPress не смог инициализировать слой базы данных, а уровень расширений становится первой предполагаемой причиной.
Когда диагностика доходит до такого уровня, решение уже не сводится к установке пакетов. Это превращается в процесс отслеживания выполнения, проверки согласованности конфигураций и подтверждения того, что каждый слой системы взаимодействует именно так, как должен.
Хорошая новость в том, что после определения реальной точки сбоя исправление обычно оказывается простым. Основная сложность заключается не в применении решения, а в точной диагностике нужного уровня.
Далее мы соберём всё в единый диагностический чек-лист, чтобы вы могли последовательно проверить каждый слой перед тем, как переходить к более сложным мерам.
Читайте также: Простое и понятное руководство по редактированию файла functions.php в WordPress
Финальный диагностический чек-лист
Если вы хотите методично решить эту проблему, не перебирая случайные способы, воспользуйтесь чек-листом ниже. Он предназначен именно для ситуации, когда WordPress сообщает в вашей установке php отсутствует расширение mysql, но реальная причина может скрываться в среде выполнения.
- Проверьте версию PHP в браузере через
phpinfo(), а не только через SSH. Если версии CLI и веб-сервера отличаются, вы анализируете разные среды выполнения. - В
phpinfo()убедитесь, что указаныmysqliилиpdo_mysql. Если ни одно из них не отображается, расширение действительно отсутствует. - Проверьте путь Loaded Configuration File. Убедитесь, что редактируемый вами файл
php.iniдействительно загружается веб-средой. - Найдите параметр
extension_dirи убедитесь, что он соответствует активной сборке PHP. Неверный каталог может незаметно блокировать загрузку модулей. - Если используется PHP-FPM, проверьте, какой пул и какой сокет применяет веб-сервер. После обновлений конфигурации Nginx или Apache часто продолжают указывать на старые сокеты.
- Перезапустите правильный сервис. Перезапуск «какого-нибудь» PHP-FPM недостаточен, если установлено несколько версий. Нужно перезапустить именно активную.
- Если расширение загружается, но ошибка остаётся, проверьте подключение к базе данных: состояние сервиса, тип хоста (сокет или TCP) и не изменился ли путь к сокету.
- Ещё раз проверьте
wp-config.php, особенно параметрDB_HOST. В контейнерных средах правильным хостом часто является имя сервиса, а неlocalhost. - Если система использует SELinux или усиленные политики безопасности, убедитесь, что PHP имеет доступ к сокету базы данных или сетевому порту.
- Удалите файл
info.phpпосле завершения проверки. Оставлять его в открытом доступе небезопасно.
Если вы проверили все пункты выше, а сайт всё равно не работает, значит проблема уже не в «отсутствующем расширении». На этом этапе речь идёт о более глубокой проблеме инфраструктуры или согласованности сборки, а не о проблеме обновления WordPress.
FAQ
Почему WordPress сообщает об отсутствии расширения MySQL, если MySQLi установлен?
Потому что это устаревшая формулировка сообщения. WordPress использует mysqli или pdo_mysql, но если PHP не загружает их в активной среде выполнения или возникает несоответствие среды, WordPress всё равно может показывать ошибку wordpress отсутствует расширение mysql.
Поддерживает ли PHP 8.3 MySQL?
Да. PHP 8.3 поддерживает MySQL через mysqli и pdo_mysql. Если вы видите ошибку php отсутствует расширение mysql wordpress, обычно это связано с конфигурацией или несоответствием среды выполнения, а не с отсутствием поддержки MySQL в самом PHP.
Как включить MySQLi в PHP?
На большинстве систем это делается установкой соответствующего пакета (часто php-mysql) или включением модуля в панели управления. В Windows может потребоваться раскомментировать строку extension=mysqli в файле php.ini. Важно убедиться, что расширение включено именно для той среды PHP, которую использует веб-сервер.
Почему php -m показывает mysqli, а WordPress всё равно не работает?
Потому что php -m проверяет среду выполнения CLI. При этом ваш веб-сервер может использовать другую версию PHP, другой файл php.ini или другой пул PHP-FPM. Это одна из самых распространённых причин ошибок типа исправить ошибку расширения mysql wordpress.
Может ли эта ошибка возникать из-за неправильных данных подключения к базе?
Да. Если WordPress сталкивается со сбоем на раннем этапе инициализации базы данных, сообщение об ошибке может вводить в заблуждение. Неверные учётные данные, остановленная служба базы данных или несоответствие сокета могут вызывать похожие симптомы, даже если mysqli загружен.
Помогает ли обычно обновление WordPress?
Иногда да, но в современных конфигурациях это происходит редко. В средах PHP 8.x такая ошибка чаще связана с настройками сервера, а не с устаревшими файлами ядра WordPress.
Заключение
В большинстве реальных случаев сообщение в вашей установке php отсутствует расширение mysql связано не с проблемой WordPress и не с необходимостью переустанавливать PHP. Это сигнал о том, что один из уровней в цепочке среды выполнения PHP работает несогласованно. Как только вы определите, какая именно среда обслуживает запрос, и убедитесь, что в ней загружены mysqli или pdo_mysql, решение обычно оказывается простым.
В CoDiCo самый быстрый результат почти всегда достигается за счёт проверки согласованности среды выполнения, а не установки дополнительных пакетов.


