Как сбросить root-пароль в mysql

В данной инструкции мы расскажем как сбросить пароль к  базе данных MySQL. Для этого вам потребуется root-доступ к серверу по SSH.

В некоторых дистрибутивах к MySQL можно подключиться без ввода пароля с помощью плагин auth_socket. По умолчанию  доступ имеет только root-пользователь ОС.

Чтобы проверить, какой у вас доступ, подключитесь к серверу и выполните следующую команду:

mysql

Если настроен доступ без пароля, на экране вы увидите примерно следующее:

Если на MySQL настроен доступ по паролю, вы увидите ошибку:

 

Предлагаем воспользоваться инструкцией по восстановлению root - пароля MySQL:

Подключитесь по SSH к вашему серверу;

1. Откройте файл параметров MySQL командой:

nano /etc/mysql/my.cnf

2. Добавьте в конец файла три параметра:

[mysqld]

skip-grant-tables

skip-networking

Если же директива [mysqld] уже прописана в файле, достаточно добавить только skip-grant-tables и skip-networking:

  • skip-grant-tables — параметр, который пропускает проверку прав. Это позволит подключиться к MySQL без пароля любому пользователю.
  • skip-networking — параметр, который запретит удалённые подключения к серверу БД на время сброса пароля.

 

3. Для сохранения изменений, нажмите CTRL+S. Далее закройте редактор сочетанием клавиш CTRL+X.

4. Перезапустите сервер БД следующей командой чтобы запустить MySQL с нужными параметрами:

systemctl restart mysql.service

5. Подключитесь к серверу баз данных командой:

mysql

6. Перезагрузите привилегии:

FLUSH PRIVILEGES;

7. Поменять пароль необходимо при помощи команды:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

Вместо password введите свой новый пароль.

При выполнении команды может возникнуть ошибка неправильного синтаксиса, в этом случае попробуйте команду:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password');

При  возникновении ошибки «ERROR 1290 (HY000): The MySQL server is running with the —skip-grant-tables option so it cannot execute this statement», выполните команду из 6 шагов.

8. Необходимо открыть конфигурационный файл:

nano /etc/mysql/my.cnf

9. Удалить из файла текст, который добавили на 2-ом шаге:

[mysqld]

skip-grant-tables

skip-networking

Если на 2-ом шаге вы добавили только параметры skip-grant-tables и skip-networking, удалите только их.

Внимание! Обязательно удалите опцию skip-grant-tables из конфигурационного файла после смены пароля. Если не удалить параметр, после перезапуска сервера баз данных подключаться к MySQL можно будет без пароля от имени любого пользователя.

10. Для сохранения изменений, нажмите CTRL+S. Далее закройте редактор сочетанием клавиш CTRL+X.

11. Подключитесь к серверу баз данных: 

mysql -uroot -p’password’

Вместо password напишите ваш новый пароль.

Готово!

  • 5 Пользователи считают это полезным
Помог ли вам данный ответ?

Похожие статьи

Смена пароля услуги виртуального хостинга

Изменить пароль от услуги хостинга можно в личном кабинете. Для этого необходимо: 1....

Как подключиться к хостинг серверу по ftp и начать работу

FTP(File transfer protocol) - протокол передачи и просмотра файлов/папок на удалённом сервере. С...

Как подключиться к хостинг серверу по ssh

SSH-протокол (англ. Secure Shell ) используется для безопасного удалённого управления...

Как создать дополнительного ftp пользователя и сменить/восстановить пароль ftp

В данной статье расскажем как создать дополнительного FTP пользователя, а также как сменить либо...

Как войти в панель управления хостингом

Изменить пароль от услуги хостинга можно в личном кабинете. Для этого необходимо: 1. Зайти в...

Powered by WHMCompleteSolution