Mysql как поменять пароль root windows

Обновлено: 02.07.2024

Чтобы изменить пароль root пользователя MySQL нужно подключение к серверу по SSH.

Подключаемся к MySQL как пользователь root при помощи команды:

Нажимаем Enter, указываем пароль и снова нажимаем Enter;

Выполним следующие команды:

После этого пароль будет изменён на newpass.

Данный способ также подходит и для изменений паролей других MySQL пользователей. Для этого в вышеуказанной команде необходимо указать пользователя, для которого меняется пароль (например, вместо root@localhost — dovecot@localhost) и новый пароль.

Сброс root-пароля MySQL

Если mysql root-пароль был утерян, его можно сбросить следующим образом:

Подключаемся к VPS с правами root.

На Ubuntu для остановки mysql-сервера используем команду:

Создадим каталог /var/run/mysqld который будет использоваться mysql для хранения и доступа к файлу сокета и назначим необходимые права:

Запустим mysql со следующими параметрами:

Проверим, что процесс запущен:

Затем сбросим пароль root следующей последовательностью запросов:

Новый_root_пароль, мы установили "1111".

Завершим процесс mysqld:

Запустим службу mysql:

Теперь мы можем выполнить вход, используя установленный пароль:

На Debian для остановки mysql-сервера используем команду:

Запускаем mysql с ключем --skip-grant-tables в фоновом режиме :

Заходим в mysql от пользователя root (пароль запрашиваться не будет):

Меняем пароль и применяем привилегии:

На CentOS 7 для остановки mysql-сервера используем команду:

Далее выполняем команду:

Символ & в конце команды означает, что она перейдёт в фоновый режим и мы получим терминал обратно.

Подключаемся к mysql с правами root. Поскольку mysql запущен в безопасном режиме, пароль для входа не требуется:

Выбираем базу данных mysql:

Устанавливаем новый mysql root-пароль командой:

Отключаемся от mysql:

Останавливаем и затем вновь запускаем сервер MySQL командами:
Debian/Ubuntu:

Как изменить (сбросить) root пароль в MySQL

Довольно часто происходит такая ситуация, что пароль для учетной записи root в MySQL необходимо восстановить, поменять или сбросить. Хорошо, если он известен, но бывают случаи, когда пароль был утерян или неизвестен с самого начала. В данной статье пойдет речь о том, как этот пароль восстановить, имея доступ к серверу, на котором запущен mysql-server для обоих случаев, когда пароль о учетной записи root ИЗВЕСТЕН и НЕ ИЗВЕСТЕН.

Как поменять пароль root в MySQL

Если пароль root ИЗВЕСТЕН

Возьмем самую простую ситуацию, когда пароль от учетной записи root вам известен и все что нужно сделать, это просто его поменять. Чтобы задать новый пароль для учетной записи root, необходимо проделать следующие действия:

В том случае, если вы пользуетесь каким-либо веб-интерфейсом, например, phpMyAdmin, то тогда вы можете пропустить пункт 1 и сразу же выполнить запрос для нужной версии MySQL (пункт 2) прямо из интерфейса phpMyAdmin (вкладка SQL).

1) Подключаемся в консоль MySQL сервера с правами root (не забываем ввести пароль, после появления соответствующего запроса):

2) Меняем пароль для пользователя root:

Для MySQL версий 5.7.6 и новее (5.7.7, 5.7.8. )

Для MySQL версий 5.7.5 и старее (5.7.4, 5.7.3. )

NEW_PASSWORD - это пароль, который вам необходимо поменять на свой собственный.
В результате выполнения данной команды, мы должны получить вот такой вывод в консоли:

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

В результате выполнения данной команды, мы должны получить вот такой вывод в консоли:

3) Перезагружаем привилегии, чтобы изменения вступили в силу:

4) Для выхода из консоли MySQL сервера выполняем команду выхода:

После этого, пароль должен поменяться.

Если пароль root НЕ ИЗВЕСТЕН

Если вы не знаете текущий пароль root (потеряли, забыли) в MySQL, то придется пойти чуть более сложным путем, чем описанные действия выше:

1) Останавливаем mysqld:

2) Проверяем, что нет запущенных процессов mysqld:

Если все нормально, то вывод команды должен состоять лишь из одной строки, примерно такого содержания:

3) Создаем каталог /var/run/mysqld для запуска mysqld в safe режиме из консоли

4) Делаем владельцем данного каталога пользователя mysql (чтобы не было проблем с правами)

5) Запускаем MySQL в ручном режиме из консоли, пропуская проверку прав (опция --skip-grant-tables). А также отключаем доступ к серверу через TCP/IP (с помощью опци и --skip-networking), чтобы злоумышленник не мог воспользоваться тем, что мы отключили проверку прав пользователей. При использовании данной опции, доступ к серверу становится возможным только через localhost.

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

6) Подключаемся из консоли к серверу mysqld и выбираем базу данных mysql:

7) Используем плагин mysql_native_password, иначе в некоторых случаях будем получать ошибку "ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded", а нам это не нужно:

Вывод в результате выполнения данной команды должен быть примерно таким:

8) Перезагружаем привилегии:

9) Меняем пароль для нужного пользователя, в нашем случае это root:

Для MySQL версий 5.7.6 и новее (5.7.7, 5.7.8. )

Для MySQL версий 5.7.5 и старее (5.7.4, 5.7.3. )

NEW_PASSWORD - это пароль, который вам необходимо поменять на свой собственный.
В результате выполнения данной команды, мы должны получить вот такой вывод в консоли:

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

В результате выполнения данной команды, мы должны получить вот такой вывод в консоли:

9) После чего, вводим команду exit для отключения:

10) Выключаем запущенный в ручном режиме Mysqld сервер:

Если все пройдет успешно, то вывод должен быть примерно таким:

Если же команда не сработала и вы получаете вот такую (или любую другую) ошибку:

То можно принудительно завершить процесс с помощью следующей команды:

11) Проверяем, что нет запущенных процессов mysqld:

Если все нормально, то вывод команды должен состоять лишь из одной строки, примерно такого содержания:

12) Запускаем Mysql-server в нормальном режиме:

И пытаемся подключиться к нашему серверу с новым паролем, который мы установили.

Пароль пользователя root спрашивается во время установки СУБД. Если установка делалась вручную, то есть без инстолятора, как это описано, например, в этой статье, то пароль может быть не установлен вовсе.

Если вы используете какие-то готовые сборки, которые включают в себя MySQL/MariaDB, то обратитесь за паролем на официальные сайты этих сборок. Также попробуйте такие учётные данные:

Если вы действительно забыли пароль MySQL/MariaDB и вам нужно сбросить пароль root в MySQL на Windows, то данная статья расскажет, как это сделать.

Шаг 1 — Определяем версию системы управления базой данных

Найдите, в какой папке у вас расположен файл mysqld.exe. При установке по данной инструкции, этот файл расположен в папке C:\Server\bin\mysql-8.0\bin\.

Откройте командную строку. Нам понадобятся права администратора, поэтому делаем следующее: нажмите Win+x и там выберите Windows PowerShell (администратор):


Теперь перейдите в командной строке в директорию с файлом mysqld.exe, для этого используйте команду вида:

Например, у меня это папка C:\Server\bin\mysql-8.0\bin\, тогда команда такая:

Нужно определить версию MySQL/MariaDB, для этого выполните команду:


Шаг 2 — Остановка сервера базы данных

Для изменения пароля root вы должны заранее отключить сервер базы данных. Для MySQL и MariaDB вы можете сделать это командой:

После того, как сервер остановлен, вы вручную получите к нему доступ для сброса пароля рута.

Шаг 3 — Перезапуск сервера базы данных без проверки разрешений

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

Запустите базу данных без загрузки таблиц привилегий и без доступа к сети:

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

Шаг 4 — Смена пароля рута

Теперь вы можете подключиться к базе данных как пользователь рут, у которого не спросят пароль.

Открываем новое окно командной строки, можно без прав администратора.

Опять переходим в нужную папку

И подключаемся к серверу MySQL/MariaDB

Вы сразу же увидите приглашение оболочки базы данных. Приглашение командной строки MySQL:

Теперь, когда у вас имеется рут доступ, вы можете изменить пароль рута.


Простым способом смены пароля рута для современных версий MySQL является использование запроса ALTER USER. Тем не менее эта команда не будет работать прямо сейчас, поскольку таблицы привилегий не загружены. Давайте скажем серверу баз данных перегрузить таблицы привилегий введя команду:

Теперь действительно мы можем поменять пароль рута.

Для MySQL 5.7.6 и новее, а также для MariaDB 10.1.20 и новее используйте следующую команду:

Для MySQL 5.7.5 и старее, а также для MariaDB 10.1.20 и старее используйте:

Не забудьте поменять новый_пароль на выбранный вами новый пароль.

Примечание: если команда ALTER USER не работает, то это обычно является признаком более серьёзной проблемы. Тем не менее вместо этой вы можете попробовать UPDATE … SET для сброса root пароля:

После этого не забудьте перегрузить таблицы привилегий:

В любом случае вы должны видеть подтверждение, что команда успешно выполнена. Вывод:

Выходим из сессии:

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

Шаг 5 — Обычный перезапуск сервера базы данных

Для начала, остановите экземпляр сервера базы данных, который вы запустили вручную на Шаге 3. Для этого перейдите в окно с запущенной mysqld и нажмите Ctrl+c.

Затем перезапустите сервис обычным образом:

Теперь вы можете подтвердить, что новый пароль работает, запустите:

Эта команда должна вызвать приглашение в который нужно ввести новый пароль. Введите его, вы должны получить доступ к интерфейсу командной строки базы данных, как это обычно и происходит.


Заключение

Теперь вы восстановили административный доступ к серверу MySQL или MariaDB. Убедитесь, что новый пароль рута, который вы выбрали, безопасный и храните его в надёжном месте.

Ошибка «--shared-memory, or --named-pipe should be configured on NT OS»

Если при запуске mysqld вы столкнулись со следующей ошибкой:

то вам необходимо к команде запуска mysqld добавить флаг --shared-memory.

MYSQL был установлен давно. Теперь, поскольку мне нужно использовать MYSQL, но я забыл пароль, я поискал его в Интернете в час ночи. Большинство методов в Интернете - это добавление –skip-grant-tables в My.ini или My_default.ini Метод достижения пропустить пароль Mysql для подключения к базе данных и изменить пароль. Ни один из этих методов у меня не работает. Наконец, объединив два блога, я нашелнадежныйМетод записывается на тот случай, если вы забудете пароль позже.

Запомните исходный парольВ случае изменения нового пароля:
После входа в базу данных введите

как показано на картинке:

Измените пароль пользователя root @ localhost на admin:


Шаг 1. Отключите службу mysql.

  1. Откройте cmd от имени администратора, переключите каталог с диска C по умолчанию на каталог установки mysqld.exe, мой каталог установки по умолчанию: C: \ Program Files \ MySQL \ MySQL Server 8.0 \ bin
  1. cmd input команда: net stop mysql, обязательно закройте службу mysql

(Если здесь сообщается об ошибке, возможно, имя службы MySQL - не MySQL, а имя моей службы MySQL - MySQL80, поэтому я использую команду net stop mysql80 для завершения службы mysql)


Шаг 2. Пропустите проверку пароля Mysql

После закрытия службы Mysql продолжайте работу в каталоге C: \ Program Files \ MySQL \ MySQL Server 8.0 \ bin.
ввод

После ввода этой строки кода я успешно пропустил вход в систему с паролем Mysql


Шаг 3. Введите Mysql без пароля

Затем откройте cmd.exe, запущенный в режиме администратора, войдите в каталог bin в mysql, войдите в MySQL без пароля учетной записи, а затем сбросьте пароль пользователя root системы баз данных на admin.

  1. Введите следующую командную строку, чтобы войти в MySQL без пароля учетной записи.



  1. Сбросьте пароль, установите пароль для root @ localhost = «новый пароль»;
    В качестве примера возьмем установку нового пароля admin, введите


Наконец-то вы закончили, успешно сбросили пароль!

Это руководство объясняет, каким образом можно установить, измененить или сбросить (если вы забыли пароль) рутовый пароль в MySQL. Снова и снова я наблюдаю одну и ту же картину:

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

mysqladmin -команда, при помощи которой меняется пароль root в MySQL

Метод 1. Установка пароля root в первый раз.

Если вы никогда не устанавливали пароль root в MySQL, сервер не будет требовать пароля root для подключения к вашим базам данных. Чтобы впервые установить пароль MySQL используйте в консоли команду mysqladmin как показано далее:

mysqladmin -u root password newpass

где newpass будет пароль который вы устанавливаете.

Для изменения (обновления) пароля root воспользуйтесь следующей командой:

mysqladmin -u root -p oldpassword newpass

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

Изменения пароля MySQL для других пользователей.

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

mysqladmin -u user-name -p oldpassword newpass

MySQL хранит имена пользователей и пароли в таблице пользователей внутри базы данных. Вы можете обновить пароль используя следующий метод:

1. Залогиньтесь в MySQL и введите следующую команду:

2. Начните работу с базой данных. В качестве приглашения для ввода команд вначале строки у вас должно быть mysql>

3. Смените пароль пользователя

4. Перегрузите привелегии и отлогиньтесь

Этот метод применим в случае использования на вашем сервере PHP и скриптов Perl.

Восстановление пароля root в MySQL.

Вы можете восстановить пароль от баз данных MySQL если повторите следующие 5 шагов:

Далее приводятся команды, которые необходимо использовать для каждого шага, при условии, что вы вошли в систему с root-привелегиями.

1. Останавливаем службу MySQL:

/etc/init.d/mysql stop
Stopping MySQL database server: mysqld.

Должен быть следующий вывод:

[1] 5988
Starting mysqld daemon with databases from /var/lib/mysql
mysqld_safe[6025]: started

3. Подключаемся с серверу MySQL при помощи клиента mysql:

4. Вводим новый пароль для root:

Читайте также: