Возникла ситуация, когда вы забыли пароль от учетной записи root в MySQL? Не волнуйтесь, в данной статье вы узнаете о нескольких способах сбросить его пароль и восстановить доступ к своей базе данных.
Учетная запись root в MySQL имеет административные привилегии и используется для управления и настройки базы данных. Потеря доступа к этой учетной записи может вызвать серьезные проблемы. Однако, существуют несколько способов, которые помогут вам сбросить пароль и снова получить доступ к вашей базе данных.
Первый метод — использование командной строки MySQL. Вам нужно будет остановить службу MySQL, запустить ее в безопасном режиме и выполнить несколько команд, чтобы сбросить пароль root. Подробная инструкция с пошаговыми действиями будет представлена далее в статье.
Второй метод — использование утилиты mysqld_safe, предоставляемой MySQL. Этот способ также требует некоторых действий через командную строку, но он более прост в выполнении и может быть быстрее в ряде случаев.
Восстановление пароля root mysql
Восстановление пароля root mysql может быть необходимо, если вы забыли свой текущий пароль или потеряли доступ к базе данных. Чтобы восстановить пароль, выполните следующие шаги:
- Остановите службу mysql.
- Запустите службу mysql с параметром —skip-grant-tables для запуска сервера без проверки учетных данных.
- Подключитесь к серверу mysql используя команду mysql -u root.
- Измените пароль root с помощью команды ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘новый_пароль’;
- Перезапустите службу mysql без параметра —skip-grant-tables.
- Проверьте изменения, подключившись к серверу mysql с помощью нового пароля.
После выполнения этих шагов вы сможете войти в систему как root с новым паролем.
Получение доступа к серверу
Если вы забыли пароль функции root в MySQL, вы можете восстановить доступ к серверу, следуя следующим шагам:
1. Остановите работу базы данных MySQL.
Linux | sudo systemctl stop mysql |
Windows | net stop mysql |
2. Запустите MySQL в безопасном режиме с опцией «—skip-grant-tables».
Linux | sudo mysqld_safe --skip-grant-tables & |
Windows | mysqld_safe --skip-grant-tables |
3. Подключитесь к MySQL без ввода пароля.
Linux | mysql -u root |
Windows | mysql.exe -u root |
4. Измените пароль для пользователя root.
MySQL 5.7.6 и новее | ALTER USER 'root'@'localhost' IDENTIFIED BY 'новый_пароль'; |
MySQL 5.7.5 и ранее | UPDATE mysql.user SET password=PASSWORD('новый_пароль') WHERE user='root'; |
5. Перезапустите MySQL.
Linux | sudo systemctl start mysql |
Windows | net start mysql |
Теперь вы можете войти в MySQL с использованием нового пароля root.
Остановка службы mysql
Перед сбросом пароля root на сервере MySQL необходимо остановить службу MySQL.
Существует несколько способов остановить службу MySQL в различных операционных системах:
1. В Ubuntu или Debian:
Откройте терминал и выполните следующую команду:
sudo service mysql stop
или
sudo systemctl stop mysql
2. В CentOS или Fedora:
Откройте терминал и выполните следующую команду:
sudo systemctl stop mysqld
3. В Windows:
Откройте командную строку от имени администратора и выполните следующую команду:
net stop "MySQL"
После выполнения этих команд служба MySQL будет остановлена, и вы сможете приступить к сбросу пароля root. Убедитесь, что вы выполнили необходимые резервные копии или предприняли другие меры предосторожности перед сбросом пароля.
Запуск службы с параметром —skip-grant-tables
Если вы забыли пароль root для доступа к MySQL, вы можете сбросить его, запустив службу MySQL с параметром —skip-grant-tables. Это позволяет вам получить доступ к БД без проверки прав доступа и изменить пароль root.
Для запуска службы MySQL с параметром —skip-grant-tables, выполните следующие действия:
- Остановите службу MySQL с помощью команды sudo service mysql stop (на Linux) или sudo /etc/init.d/mysql stop (на macOS).
- Запустите службу MySQL с параметром —skip-grant-tables с помощью команды sudo mysqld_safe —skip-grant-tables &.
- Откройте новый терминал и подключитесь к службе MySQL без ввода пароля с помощью команды mysql -u root.
- Войдите в командную оболочку MySQL с помощью команды use mysql;.
- Измените пароль root с помощью команды update user set authentication_string=PASSWORD(«новый_пароль») where User=’root’;.
- Сбросьте привилегии с помощью команды flush privileges;.
- Выйдите из командной оболочки MySQL с помощью команды quit.
- Остановите службу MySQL с помощью команды sudo service mysql stop (на Linux) или sudo /etc/init.d/mysql stop (на macOS).
- Запустите службу MySQL без параметра —skip-grant-tables с помощью команды sudo service mysql start (на Linux) или sudo /etc/init.d/mysql start (на macOS).
Теперь ваш пароль root для доступа к MySQL был сброшен и изменен на новый пароль, который вы установили.
Изменение пароля root
Если вы забыли пароль root для сервера MySQL или хотите изменить его на новый, вы можете выполнить следующие шаги:
1. | Откройте командную строку или терминал. |
2. | Введите следующую команду для остановки сервера MySQL: |
sudo systemctl stop mysql | |
3. | Запустите сервер MySQL с параметрами безопасного режима, чтобы пропустить аутентификацию: |
sudo mysqld_safe --skip-grant-tables & | |
4. | В новом терминале введите следующую команду, чтобы войти в командную строку MySQL без пароля: |
mysql -u root | |
5. | Используйте следующую команду MySQL для изменения пароля root на новый: |
ALTER USER 'root'@'localhost' IDENTIFIED BY 'новый_пароль'; | |
6. | Выполните следующую команду, чтобы обновить привилегии: |
FLUSH PRIVILEGES; | |
7. | Выйдите из командной строки MySQL и остановите сервер MySQL: |
EXIT; | |
sudo systemctl stop mysql | |
8. | Теперь можно запустить сервер MySQL с новым паролем: |
sudo systemctl start mysql |
После выполнения этих шагов пароль root для вашего сервера MySQL будет изменен. Обязательно запомните этот новый пароль и храните его в безопасном месте.