FAQ по восстановлению забытого пароля администратора в MySQL
В данной статье описывается что делать если вы забыли администраторский пароль или случайно удалили самого root-пользователя. Статья ориентирована в первую очередь на новичков, поэтому описание всех действий изложено очень подробно, однако материал может оказаться небезынтересен и для более опытных пользователей.
Как восстановить забытый пароль администратора?
Пароли хранятся в базе в зашифрованном виде, поэтому восстановить забытый пароль нельзя, однако можно установить новый. Для этого нужно:
1. Перезапустить сервер в режиме --skip-grant-tables
2. Установить новый пароль администратора
3. Перезапустить сервер в обычном режиме
Теперь подробнее о каждом пункте. В режиме skip-grant-tables отключена проверка прав доступа и привилегий, иными словами, вы можете подключиться с пустыми логин/пароль и будете обладать при этом всеми возможными привилегиями.
Примечание. Обратите внимание, что другие пользователи, подключившие до выполнения вами команды FLUSH PRIVILEGES; или перезагрузки сервера в обычном режиме, также будут обладать администраторскими правами.
MySQL сервер хранит информацию о привилегиях в таблицах привилегий служебной базы mysql. При старте сервера, содержимое таблиц привилегий загружается в память и в дальнейшей работе используется копия, находящаяся в памяти. Команда FLUSH PRIVILEGES; обновляет данные о привилегиях, загруженные в память. Таким образом, данная команда отменяет режим skip-grant-table и включает проверку прав доступа и привилегий.
Примечание. Обратите внимание, что если вы напрямую редактируете содержимое таблиц привилегий базы mysql, с помощью команд INSERT, UPDATE, DELETE, то изменения сразу не вступят в силу, так как информация о пользовательских привелегиях, загруженная в память, останется неизменной.
Если использовать рекомендованные команды типа GRANT или SET PASSWORD, то изменения вступят в силу незамедлительно.
Примечание. Обратите внимание, что изменение прав пользователей не распространяется на уже установленные соединения пользователей. Если нужно отнять у кого-то права, то после следует убедиться, что он не подключен к серверу (с помощью SHOW FULL PROCESSLIST), а если подключен, то убить его поток (оператором KILL).
Для запуска сервера в режиме skip-grant-tables проще всего временно добавить строчку skip-grant-tables в my.ini (для ОС Linux файл будет называться my.cnf) в секции [mysqld]
[mysqld]
skip-grant-tables
другие параметры
Затем перезапустить сервер.
Дальнейшие действия будут зависеть от используемого вами клиента:
1. Если ваш клиент не разрывает соединение после выполнения каждой команды как, например, родной клиент mysql, то первым делом выполняем команду FLUSH PRIVILEGES;, которая загружает в память таблицы грантов. Затем с помощью команд GRANT или SET PASSWORD назначаем пароль администратору:
SET PASSWORD for root@localhost=password('mypassword');
Данный вариант действий является предпочтительным.
2. Если ваш клиент разрывает соединение после выполнения каждой команды, например, Query Browser, то после выполнения FLUSH PRIVILEGES; он будет требовать указать пароль, который мы ещё не успели назначить. Назначить сначала пароль с помощью команд GRANT или SET PASSWORD не получится, так как в режиме skip-grant-tables их нельзя использовать. (Выше уже указывалось, что FLUSH PRIVILEGES; отменяет данный режим, поэтому в предыдущем пункте данные команды работают.) Остается единственно возможный способ это напрямую изменять данные в таблице mysql.user
UPDATE mysql.user SET PASSWORD=PASSWORD('mypassword') WHERE user='root' AND host='localhost';
Как восстановить root-пользователя?
Если root-пользователь (пользователь, обладающий всеми возможными прривилегиями, как правило имеет имя root) был по неосторожности удален, то последовательность действий аналогична предыдущему разделу за исключением того, что вместо назначения пароля необходимо будет создать root-пользователя. Т.е. в режиме skip-grant-tables в зависимости от используемого вами клиента действуем одним из нижеследующих способов:
1.
FLUSH PRIVILEGES;
Затем добавляем root-пользователя с помощью команды GRANT
GRANT ALL TO *.* ON `root`@`localhost` IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
2. Создаем root-пользователя путем прямого добавления записи в таблицу mysql.user. Обратите внимание, что структура таблицы mysql.user в разных версиях различна. Перед добавлением изучите её с помощью команд SHOW CREATE TABLE или DESCRIBE. Например, для версии 5.1.21-beta-community добавление root-пользователя производится следующей командой:
INSERT INTO mysql.user
(Host,User,Password,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,
Reload_priv,Shutdown_priv,Process_priv,File_priv,Grant_priv,References_priv,Index_priv,
Alter_priv,Show_db_priv,Super_priv,Create_tmp_table_priv,Lock_tables_priv,Execute_priv,
Repl_slave_priv,Repl_client_priv,Create_view_priv,Show_view_priv,Create_routine_priv,
Alter_routine_priv,Create_user_priv,Event_priv,Trigger_priv,ssl_type,ssl_cipher,x509_issuer,
x509_subject,max_questions,max_updates,max_connections,max_user_connections)
VALUES('localhost','root',password('mypassword'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
Распространенные случаи.
Ошибка (1045 Access denied for user 'root'@'localhost' (USING password: No)) означает, что подключение производится с пустым паролем.
Ошибка (1045 Access denied for user 'root'@'localhost' (USING password: Yes)) указывает на неверный пароль.
Обе данные ошибки могут возникнуть вследствии недостатока прав доступа для выполнения требуемой операции, т.е. пользователя зовут root, но права у него не рутовые. На практике такая ситуация маловероятна.
Удалённый доступ root-пользователя.
В MySQL пользователь характеризуется двумя параметрами: именем и хостом, с которого он может обращаться, т.е. user@x и user@y - это разные пользователи. Для удобства записи в MySQL используются квантификаторы, например, % на месте хоста означает любую машину кроме локальной.
Если при доступе под рутом с удаленной машины вы получаете ошибку (1045 Acces denied for user 'root'@'%'), то это может оказаться следствием того, что в настройках по умолчанию удаленный root-пользователь оказался не совсем "рутом", т.е. не обладает всеми привилегиями. Для проверки нужно (под настоящим "рутом") сравнить результат выполнения команд:
SHOW GRANTS for root@localhost;
SHOW GRANTS for root@'%';
И при необходимости добавить недостающие привилегии пользователю root@'%' с помощью команды GRANT. Если необходимо владеть привилегиями администратора при соединении с удаленной машины, то рекомендуем, в целях безопасности, называть такого пользователя другим именем (не root).
Ссылки
В официальной документации описан оригинальный способ восстановления администраторского пароля.
|
В данной статье описывается что делать если вы забыли администраторский пароль или случайно удалили самого root-пользователя. Статья ориентирована в первую очередь на новичков, поэтому описание всех |
РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2025-12-02 » Когда ошибка молчит: как бессмысленные сообщения ломают пользовательский опыт
- 2025-12-02 » 9 лучших бесплатных фотостоков
- 2025-12-02 » UTM-метки: ключевой инструмент аналитики для маркетолога
- 2025-12-02 » ПромоСтраницы Яндекса: Что такое и для чего служит
- 2025-12-02 » Метатеги для сайта: исчерпывающее руководство по Title, Description, Canonical, Robots и другим тегам
- 2025-11-26 » Оценка эффективности контента: превращаем информационный балласт в рабочий актив
- 2025-11-26 » 10 причин высокого показателя отказов на сайте
- 2025-11-26 » Когда и зачем обновлять структуру сайта
- 2025-11-26 » Скрытые демотиваторы: как мелочи разрушают эффективность команды
- 2025-11-26 » Зачем запускать MVP и как сделать это грамотно?
- 2025-11-20 » Половина российских компаний сократит расходы на транспорт и маркетинг в 2026 году
- 2025-11-20 » Перенос сайта с большим количеством ссылок
- 2025-11-20 » Перелинковка сайта: Что такое и как ее использовать
- 2025-11-20 » Критерии выбора SEO-специалиста и подрядчика для продвижения сайта
- 2025-11-20 » Применение искусственного интеллекта в рекламных агентствах: комплексное исследование трендов 2025 года
- 2025-11-19 » Геозапросы по-новому: как покорить локальное SEO с помощью ИИ
- 2025-11-14 » Консалтинг: сущность и ключевые направления
- 2025-11-14 » Онлайн-формы: универсальный инструмент для сбора обратной связи
- 2025-11-14 » Факторы конверсии органического трафика
- 2025-11-14 » Планирование рекламного бюджета: самостоятельный подход
- 2025-11-14 » Авторизация на сайте: как выбрать решение для удержания клиентов и сохранения продаж
- 2025-11-13 » Эффективные методы стимулирования клиентов к оставлению положительных отзывов
- 2025-11-13 » Налоговая реформа — 2026: грядущие изменения для предпринимателей
- 2025-11-13 » Альтернативы мессенджерам: что выбрать вместо Telegram и WhatsApp
- 2025-11-13 » Маркировка рекламы для начинающих: полное руководство по требованиям ЕРИР
- 2025-11-13 » ИИ не отберет вашу работу — её займет специалист, владеющий искусственным интеллектом
- 2025-10-29 » Как оценить эффективность работы SEO-специалиста: практическое руководство для маркетологов и владельцев бизнеса
- 2025-10-29 » Киберспорт как маркетинговый инструмент: стратегии привлечения геймеров
- 2025-10-29 » Как говорить с аудиторией о сложном
- 2025-10-29 » Что такое доказательства с нулевым разглашением (ZKP) и их роль в блокчейне
Лично я люблю землянику со сливками, но рыба почему-то предпочитает червяков. Вот почему, когда я иду на рыбалку, я думаю не о том, что люблю я, а о том, что любит рыба. (Дейл Карнеги / БИЗНЕС) |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.



Мы создаем практически любые сайты от продающих страниц до сложных, высоконагруженных и нестандартных веб приложений! Наши сайты это надежные маркетинговые инструменты для успеха Вашего бизнеса и увеличения вашей прибыли! Мы делаем красивые и максимально эффектные сайты по доступным ценам уже много лет!
Комплексный подход это не просто продвижение сайта, это целый комплекс мероприятий, который определяется целями и задачами поставленными перед сайтом и организацией, которая за этим стоит. Время однобоких методов в продвижении сайтов уже прошло, конкуренция слишком высока, чтобы была возможность расслабиться и получать \ удерживать клиентов из Интернета, просто сделав сайт и не занимаясь им...
Мы оказываем полный комплекс услуг по сопровождению сайта: информационному и техническому обслуживанию и развитию Интернет сайтов.
Контекстная реклама - это эффективный инструмент в интернет маркетинге, целью которого является увеличение продаж. Главный плюс контекстной рекламы заключается в том, что она работает избирательно.