Рубрики
sql - mysql - postgres

MySQL Сброс пароля пользователя root

Сброс пароля root mysql

0.Найдите конфигурационный файл my.cnf и добавьте в секцию [mysqld] директиву skip-grant-tables, которая отключит проверку прав доступа
тут nano nano /etc/mysql/mariadb.conf.d/50-server.cnf
тут nano /etc/mysql/my.cnf
--------------------------
[mysqld]
...
skip-grant-tables
--------------------------

2. После чего перезагрузите сервер. 

3. Теперь вы можете входить MySQL без пароля, войдите и переустановите пароль
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password'); 

4. После этого следует убрать директиву skip-grant-tables из my.cnf и перезапустить сервер.

0. /etc/init.d/mysql stop
1. mysqld_safe --skip-grant-tables &
2. mysql -uroot
3. UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root'; - где newpwd - новый пароль.
4. FLUSH PRIVILEGES;
5. /etc/init.d/mysql stop
6. /etc/init.d/mysql start

Для этого необходимо выполнить всего несколько шагов:

1. Останавливаем mysql.
service mysqld stop
2. Запускаем mysql следующей командой:
/usr/bin/mysqld_safe --skip-grant-tables --user=root &
3. Запускаем клиента mysql
mysql -u root
4. Выполняем sql запрос
UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';
где newpwd - новый пароль.
5. Применяем изменения
FLUSH PRIVILEGES;
6. Выходим из mysql клиента выполнив в нем команду exit
7. Перегружаем mysql сервер.
service mysqld restart

Пароль суперпользователя root для базы данных mysql изменен.

Сброс пароля для debian-sys-maint:

0. killall mysqld
1. mysqld_safe --skip-grant-table
2. Жмем ctrl+z
3. bg
4. mysql -u root
5. UPDATE mysql.user SET Password = PASSWORD( 'новый пароль' ) WHERE user.Host = 'localhost' AND user.User = 'debian-sys-maint';
6. exit
7. fg
8. ctrl+c
9. /etc/init.d/mysql start

Посмотреть пароль:

cat /etc/mysql/debian.cnf