phpMyAdmin. Ошибка входа mysql 2054: authentication method unknown to the client [caching_sha2_password]

Давно не занимался веб-разработкой, и когда попробовал залогиниться через phpMyAdmin, не смог подключиться. Вместо этого получил ошибку mysqli::real_connect(): HY000/2054 The server requested authentication method unknown to the client [caching_sha2_password], что в вольном переводе говорит о неизвестном для клиента (то есть для скрипта phpMyAdmin) методе аутентификации на сервере. С самими паролем и логином, естественно, все было в порядке.

Обход ошибки 2054 (authentication method unknown to the client [caching_sha2_password])

Решение оказалось простым. Нужно зайти в консоли под рутом в mysql и выполнить следующую команду:

alter user 'YouUsername'@'localhost' identified with mysql_native_password by 'YouUserPassword';

Здесь важна конструкция mysql_native_password, которая и разрешает серверу авторизовать пользователя простым паролем без sha2.

Естественно, такое изменение не рекомендуется делать на продакшн сервере. Там нужно действовать в обратную сторону, требуя от клиента отправлять пароль в захешированном виде.

В моем случае этой простой манипуляции оказалось достаточно, чтобы устранить ошибку authentication method unknown to the client и через phpMyAdmin зайти в админку сервера на тестовом локалхосте.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.