Как исправить Access denied for user 'user_name'@'host' в MySQL

MySQL может вернуть эту ошибку, когда вы пытаетесь подключиться к серверу MySQL: Error 1045 - Access denied for user 'user_name'@'host'...

Актуальная статья MySQL: ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)

Mysql

Это одна из самых распространенных ошибок в MySQL. Обычно она означает, что вы пытаетесь подключиться, используя учетную запись пользователя, не имеющую достаточных привилегий для подключения.

По умолчанию, после установки, MySQL разрешает подключение только к localhost и блокирует любые попытки удаленного подключения, пока привилегии пользователя не будут перенастроены должным образом. Это объясняет, почему вы не можете подключиться с удаленного клиента, в то время как другие серверные программы подключаются без проблем.

Чтобы установить удаленное соединение, вам необходимо переконфигурировать пользователя и дать ему соответствующие привилегии:

Или:

Для тестирования вы можете запустить сервер с опцией --skip-grant-tables:

Затем вы можете получить доступ к таблицам грантов MySQL с помощью оператора SHOW GRANTS, чтобы проверить привилегии и изменить их, если хотите:

По окончании, промойте привилегии:

Если проблема возникла с учетной записью root только после обновления MySQL, вероятно, плагин аутентификации по умолчанию изменился на auth_socket. Поэтому вы можете изменить метод аутентификации с auth_socket на mysql_native_password:

Затем промойте привилегии:

Понравилась статья? Поделиться с друзьями:
Добавить комментарий