Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

AUTH_PLUGIN_NOT_LOADED Linux / DevOps

Ошибки авторизации caching_sha2_password в MySQL 8.0: совместимость с PHP

Обновлено: 21.08.2026
  • Ошибка SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client в приложениях на PHP 7.x/8.0.
  • Сбои соединения в Legacy-коннекторах (Authentication plugin 'caching_sha2_password' cannot be loaded).
  • Успешная авторизация через стандартный консольный клиент mysql-cli, но отказ в сторонних CMS (WordPress, Bitrix, Drupal).

1. Проверка текущих плагинов аутентификации пользователей

SELECT user, host, plugin FROM mysql.user;

2. Перевод конкретного пользователя на mysql_native_password

ALTER USER 'db_user'@'%' IDENTIFIED WITH mysql_native_password BY 'StrongPassword123!';
FLUSH PRIVILEGES;

3. Глобальная смена дефолтного плагина в my.cnf (для новых пользователей)

В файле конфигурации /etc/mysql/my.cnf в секции [mysqld] добавьте:

[mysqld]
default_authentication_plugin = mysql_native_password

Перезапустите СУБД:

systemctl restart mysqld

4. Правильная настройка caching_sha2_password без понижения безопасности

Если требуется сохранить современный плагин caching_sha2_password, обновите драйвер PHP до pdo_mysql / mysqli с поддержкой OpenSSL и настройте безопасный транспорт:

[mysqld]
# Включение SSL для обмена ключами
require_secure_transport = ON
💡 Практика специалистов: Для production-контуров не отключайте caching_sha2_password глобально. Переводите на mysql_native_password только точечные учетные записи legacy-сервисов, которые невозможно обновить.

Частые вопросы (FAQ)

Почему MySQL 8.0 перешел на caching_sha2_password по умолчанию?

Он использует алгоритм SHA-256 с солью, обеспечивая устойчивость к перехвату паролей по сети, а также кэширует хеши в памяти сервера для ускорения повторной аутентификации.

Удален ли mysql_native_password в MySQL 8.4 LTS?

В MySQL 8.4 плагин mysql_native_password отключен по умолчанию, но его можно включить параметром --mysql-native-password=ON для обратной совместимости.

Полезные материалы
Рекомендуем