Получать MySQL error под Новый Год это уже стало доброй традицией для меня 🙂 . Буквально чуть больше года назад я получал ошибки связанные с БД и теперь снова получаю их обновившись до 8 версии…
Обновил свой MySQL до 8 версии и стал получать error connect ошибку при подключении к БД. А все потому что в 8 версии по умолчанию используется auth_socket соединения. В итоге, мои сайты, которые использовали пароли в конфигурации подключения к БД стали генерировать ошибку:
PHP with MySQL 8.0+ error: The server requested authentication method unknown to the client
MySQL error — как исправить ошибку?
Поэтому я активно начал искать выход из сложившейся ситуации. Быстрое гугление не дало никаких положительных результатов, пока не наткнулся на подходящую проблему на stackoverflow. Решение заключалось в изменении стандартного метода авторизации на mysql_native_password.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
В коде выше замените ‘password’ на свой пароль или оставьте поле пустым в кавычках ». После этого ошибка должна исчезнуть и можно дальше работать 😎 .