MySQL. Как сбросить пароль root в MySQL?

Данный вариант подойдёт для следующих версий:

  • MySQL 7, 8 и более ранние версии;
  • Ubuntu 16.04, 18.04, 20.04.

При использовании пароля для соединения с сервером баз банных!

Подключаемся к серверу по SSH.

  • Редактируем файл параметров MySQL командой:
		
		# nano /etc/mysql/my.cnf	
	

Путь может отличаться, нужно будет предварительно посмотреть, например, /etc/my.cnf.

  • Добавляем следующие параметры в конец файла три параметра:
		
		[mysqld]
skip-grant-tables
skip-networking	
	

Если директива [mysqld] уже прописана в файле, добавьте только skip-grant-tables и skip-networking:

  • skip-grant-tables — параметр, который пропускает проверку прав. Это позволит подключиться к MySQL без пароля любому пользователю.
  • skip-networking — параметр, который запретит удалённые подключения к серверу БД на время сброса пароля.

Чтобы запустить MySQL с нужными параметрами, перезапустите сервер БД командой:

		
		# systemctl restart mysql.service	
	

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

		
		# mysql	
	

Перезагрузите привилегии:

		
		FLUSH PRIVILEGES;	
	

Поменяйте пароль при помощи команды:

		
		ALTER USER 'root'@'localhost' IDENTIFIED BY 'сюдапишемновыйпароль';	
	

Затем снова открываем конфигурационный файл:

		
		#nano /etc/mysql/my.cnf	
	

Удалите из файла текст, который добавили во втором шаге:

		
		[mysqld]
skip-grant-tables
skip-networking	
	
Обязательно удалите опцию skip-grant-tables из конфигурационного файла после смены пароля. Если не удалить параметр, после перезапуска сервера баз данных подключаться к MySQL можно будет без пароля от имени любого пользователя.

Для проверки выполненных действий подключаемся к mysql следующей командой:

		
		# mysql -u root -p 'password'	
	

Вводим при запросе новый пароль: Готово, вы сбросили пароль от root-пользователя MySQL.

Количество просмотров: 392


Понравилась статья?

Возврат к списку