0

Как восстановить пароль mysql

В данной статье рассмотрим способ восстановления MySQL root пароля, путём сброса старого и установки нового, в случае если старый пароль утерян или забыт. Забыли пароль MySQL root пользователя? Не беспокойтесь, его можно восстановить. Подключаясь к root пользователю MySQL без ввода пароля (так как он был сохранён ранее), рано или поздно можно столкнуться с сообщением о том, что в доступе отказано. MySQL требует ввода пароля, который пользователь не помнит.

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

# mysql -u root mysql

ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)

Остановите MySQL сервер.

Первое, что необходимо сделать в таком случае, остановить MySQL сервер. Сделайте это следующим способом:

  • перейдите в папку с mysqladmin.exe:
    # cd C:Program FilesMySQLMySQL Server 5.7in
  • Остановите MySQL сервер:
    # mysqladmin –uroot –pqwerty shutdown

MySQL сервер также можно остановить из MySQL Workbench. Для этого перейдите в меню Startup / Shutdown и нажмите кнопку Stop Server.

Запустите сервер MySQL с отключенными таблицами безопасности.

Это позволит подключаться к серверу без проверки пароля.

Для этого запустите команду:
# mysqld_safe –skip-grant-tables

Или добавьте опцию skip-grant-tables в конфигурационный файл запуска my.ini после строчки [mysqld], после чего запустите сервер.
Данный файл расположен: C:ProgramDataMySQLMySQL Server 5.7

Зайдите в MySQL как root пользователь без пароля.

После отмены запроса пароля, теперь есть такая возможность.

Установите новый MySQL Root пароль

mysql> UPDATE user SET Password=PASSWORD (‘НОВЫЙ ПАРОЛЬ’) WHERE User=’root’;
mysql> flush privileges
mysql> exit

Остановите сервер MySQL и уберите из конфигурационного файла опцию –skip-grant-tables.

# mysqladmin –uroot –pqwerty shutdown

Перезагрузите MySQL сервер.

Залогиньтесь в MySQL root аккаунте с использованием нового пароля.

# mysql –uroot –pНОВЫЙПАРОЛЬ

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

  • Мессенджер ICQ: восстановление данных аккаунта пользователяЧитайте, в каких файлах хранит данные ICQ и как создать их резервную копию. Как восстановить чаты и файлы ICQ после переустановки Windows. ICQ – это раннее очень популярный мессенджер для обмена сообщениями и файлами, а в последних версиях с функц.
  • Восстановление базы данных Microsoft Access (*.mdb, *.accdb)Читайте, как восстановить утерянные или удалённые файлы базы данных Access или их резервные копии. Наиболее распространённые причины утери базы данных. Microsoft Access – это одно из приложений пакета программ Microsoft Office, которое является мо.
  • Как восстановить файлы, зашифрованные вирусом шифровальщиком Da Vinci CodeВаши файлы зашифрованы вирусом Da Vinci Code? Вы ищете дешифратор Da Vinci Code? Читайте, как защититься от заражения вирусом шифровальщиком и удалить Da_vinci_code с компьютера. Стоит ли платить выкуп, и как восстановить зашифрованные шифровальщиком.
  • Как восстановить повреждённую или удалённую базу 1С (на примере «1С: Предприятие 8.3»)В статье показаны способы восстановления базы 1С с помощью встроенных в программу инструментов или сторонних приложений. Как создать и восстановить резервную копию базы данных. Для большинства пользователей продуктов компании 1С, повреждение или у.
  • Ошибка INACCESSIBLE BOOT DEVICE в Windows 10, 8, 7Читайте о причинах возникновения ошибки INACCESSIBLE BOOT DEVICE, а также о том, как её исправить. Ошибка INACCESSIBLE BOOT DEVICE является одной из критичных BSOD ошибок операционной системы Windows. Существует несколько причин появления этой ош.
Читайте также:  Заблокирована учетная запись apple id что делать

Partition Recovery™

Надежное возвращение удаленных данных.

Универсальная программа для восстановления данных с жесткого диска, карты памяти или USB флешки.

Internet Spy™

Просмотр истории браузеров и сохраненных паролей.

Сканирует файлы браузеров и отображает информацию о проведенном в Интернете времени.

Office Recovery™

Восстановление удаленных офисных документов.

Безопасное восстановление документов, электронных таблиц, презентаций в пошаговом режиме.

Ситуация когда вы забыли пароль от root-пользователя MySQL сервера одна из неприятных, и хорошо если бы такое не случалось, но если вы утеряли пароль то есть способ попробовать восстановить его. Как вы уже поняли из названия, мы попробуем восстановить учетную запись root-пользователя на сервере MySQL. Первым делом убедитесь, что у вас есть доступ к серверу, и вы можете выполнять с ним манипуляции. В моем примере будет использовать сервер MySQL установленный на операционную систему CentOS Linux. В целом, от версии операционной системы Linux глобально для этой процедуры ничего не меняется. Поэтому приступаем к делу.
Первое что следует сделать, это войти в саму систему Linux, далее следует остановить сервер MySQL.

Останавливаем сервер MySQL

После этого, следует запустить сервер MySQL в безопасном режиме, с опцией –skip-grant-tables.

Это опция позволит подключиться к серверу MySQL минуя проверку прав пользователя root. Иными словами, мы подключаемся к серверу без пароля.
Подключаемся к серверу MySQL:

Теперь мы авторизовались под root-ом, далее нам необходимо сменить пароль root-а.

При обновлении пароля, вместо root_password вам следует указать свой пароль. Теперь можно остановить сервер MySQL, и запустить в обычном режиме.

Останавливаем сервер, запущенный в безопасном режиме

Далее можно запустить сервер, и попробовать авторизоваться в стандартном режиме.

UPD: В MySQL версии 5.7 пароль меняется немного иначе, но принцип остается прежним.

Для доступа к базе данных MySQL или MariaDB нужно ввести имя пользователя и пароль. Во время установки автоматически создаётся учётная запись пользователя root. Это аналог суперпользователя в Linux для MySQL. Он может выполнять все действия со всеми базами данных, а также создавать и удалять других пользователей.

Обычно, пароль для него не устанавливается, и вы можете задать его вручную уже после завершения установки. Но если вы забыли пароль или он был установлен автоматически, но вы его не знаете, то вам может понадобится его сбросить. Это можно сделать несколькими способами. В этой статье мы разберём, как выполняется сброс пароля root MySQL.

В статье я буду использовать Ubuntu и MariaDB, но эта инструкция подойдёт и для других дистрибутивов. В командах с systemctl для Mariadb следует использовать mariadb, а для MySQL — mysql или mysqld.

1. Сброс пароля с помощью init-file

При запуске сервиса MySQL можно указать файл, из которого будут выполнены команды sql сразу после запуска. Адрес этого файла указывается опцией —init-file. Но сначала давайте создадим файл, который будет изменять файл нашего пользователя:

UPDATE mysql.user SET password=password(‘новый пароль’) WHERE user=’root’;

Читайте также:  Для чего предназначена кэш память

Затем остановите сервис, если он запущен:

sudo systemctl stop mysql

sudo systemctl stop mariadb

Теперь осталось выполнить наш файл:

sudo mysqld —user=mysql —init-file=/home/sergiy/init-file.txt —console

Подождите минуту, чтобы всё успело сработать как нужно, а затем остановите этот процесс. В консоли команда сообщит started as proccess и PID процесса, этот PID нам и нужен, чтобы его остановить. Например:

sudo kill -TERM 5356

Далее запустите mysql обычным способом и попробуйте войти со своим новым паролем:

sudo systemctl start mariadb

Сброс пароля с помощью skip-grant-tables

Кроме того, есть и другой способ сбросить пароль MySQL. Мы можем запустить сервис с параметром —skip-grant-tables. В этом режиме программа пропускает загрузку данных о пользователях и тогда вы можете авторизоваться без ввода пароля. Аналогично, сначала нужно остановить сервис:

sudo systemctl stop mariadb

Затем запустите mysql вручную с помощью такой команды:

sudo mysqld —user=mysql —skip-grant-tables

Войдите в консоль управления mysql:

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

Теперь можно сменить пароль для пользователя root:

UPDATE mysql.user SET password=password(‘новый пароль’) WHERE user=’root’;

Затем закройте консоль клиента mysql:

Завершите запущенный вручную сервис, таким же образом как в предыдущем пункте:

sudo kill -TERM 5356

И запустите mysql в нормальном режиме:

sudo systemctl start mariadb

Дальше вы можете авторизоваться от имени суперпользователя по этому паролю:

sudo mysql -u root -p

Но, нужно отметить, что для последних версий MariaDB это уже не нужно, так как программа поддерживает авторизацию без пароля если имя пользователя базы данных и имя учетной записи в системе совпадают. Поэтому, если вы хотите войти под root в консоль MySQL, достаточно запустить клиент через sudo.

Выводы

В этой статье мы рассмотрели, как выполняется сброс пароля MySQL Ubuntu. Разработчики постоянно что-то меняют в коде сервиса, поэтому в последних версиях команды ALTER USER или SET PASSWORD могут не работать. Поэтому мы используем универсальную команду UPDATE. Надеюсь, эта информация была для вас полезной.

Нет похожих записей

Оцените статью:

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.

7 комментариев

Losst, здравствуйте. Извиняюсь за некорректно написанную просьбу (и не в теме), но облазив всю сеть ухитрился проморгать пошаговую настройку убунту на слабом ноутбуке (пользуюсь Тошибой 2005 года выпуска, на Пент4 (дискретный видео), 1,7 гига с 2г озу), хотя в характеристиках пользования линукс указывается развёртывание оси на более меньшей оперативе. Если Вас не затруднит посвятить раздел собственно настройки системы на минимальных характеристиках: сама ось, браузер и минимум программ — офис, плейер, и там по мелочи, без программ требующих особых соответствий ядра и видеокарты..
С уважением.

Поставьте Debian последней версии. Если что-то будет не так с уставкой на Ваш компьютер, то будет видны все проблемы. Debian — это основа UBUNTU. UBUNTU — это производная от Debian. Debian всегда стабилен в отличие от UBUNTU, поверьте .

Андрей, день добрый. Дебиан легче чем Лубунту или нужно искать определённую сборку?

Читайте также:  Измеряет давление человека прибор

Не понимаю понятия легче или тяжелее. Что это значит — не понимаю!
Многие говорят, что окружение KDE — тяжёлое, о GNOME — лёгкое. Не пойму чем это утверждение обосновано? Пробовал оба окружения. Процессор тратит столько же энергии в обоих окружениях. Нагревается также одинаково. Время загрузки ОС зависит от настройки. Здесь мне вообще не понятно это утверждение. Бред какой-то!

Дебиан стабилен. Убунту сделан на основе Дебиан. В Убунту многое не стабильно работает. В Дебиане, пока пакет (программу) полностью не протестируют, она не попадает в стабильную ветку дистрибутива.
Учиться работать на Linux с основой Дебиан — лучше на самом Дебиан.
Здесь, Вы разберётесь что, да как. Много поймёте для всех вопросов, которые будут возникать с другими дистрибутивами. Далее, мне так кажется, когда разберётесь — Вы станете пользоваться только Debian.
По поводу Вашего компьютера, всегда можно найти кучу информации, как на него установить полностью ОС Дебиан (Яндекс или Гугл Вам в помощь). Официальный сайт Дебиан — https://www.debian.org/
Часто задаваемые вопросы о Debian GNU/Linux — https://www.debian.org/doc/manuals/debian-faq/
Образы для установки — https://www.debian.org/CD/live/index.ru.html
Ещё есть много форумов, где Вы сможете задавать свои вопросы.

Не было ни одного компьютера, на который я бы не поставил Дебиан.
Всё зависит от Вашего хотения. Может у Вас Дебиан сразу поставиться нормально. А, может придётся установить дополнительно пакеты с программами.

—skip-grant-tables прекрасно работает из конфигурационного файла.
вот не надо делать базе kill

А, вот как правильно уставить пароль в Krbf для KDE, чтобы потом проблем не было с доступом — это с удовольствием посмотрел!

Или, как убрать шипение микрофона в Linux при использовании PulseAudio, это когда звук пишешь. То же, хотелось бы узнать правильную информацию!

После установки MySQL 5.7.26 под управлением Ubuntu 18.04, пришло резкое понимание того, что залогиниться в mysql из-под текущего пользователя с учетной записью root не получится, никаких манипуляций с пользователями и правами провернуть не получиться. Потому что только root и только unix socket и никаких паролей.
Для успешного входа и манипуляций с mysql потребуется выполнить sudo mysql -u root или предварительно авторизоваться в системе как root и выполнить mysql -u root.
Честно говоря не вижу смысла менять способ авторизации mysql-пользователя root с сокета на пароль, создавать и вводить его, а потом этот самый пароль ещё и сбрасывать. Существующие настройки довольно безопасны: авторизация root (mysql) возможна только с localhost, прикрыть системный root по SSH (если SSH используется) тоже не проблема.
Лучше настроить дополнительных mysql-пользователей, например для использования phpmyadmin создать пользователя с таким же именем — phpmyadmin — и правами, что и у root, и авторизацией по паролю. После этого можно авторизоваться от имени любого пользователя сиcтемы, зная пароль phpmyadmin, но лучше создать каждому пользователю системы своего пользователя mysql с необходимыми правами, а еще лучше не создавать =).

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

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