Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
abills:docs:manual:other:mysql_passwd_reset:ru [2013/11/04 17:16]
asmodeus [Debian]
abills:docs:manual:other:mysql_passwd_reset:ru [2017/07/04 10:51] (текущий)
asmodeus [CentOS]
Строка 12: Строка 12:
   /​usr/​local/​etc/​rc.d/​mysql-server restart   /​usr/​local/​etc/​rc.d/​mysql-server restart
   ​   ​
 +
 + ​Обновляем пароль
 +
 +  mysql> update mysql.user set password = password(''​) where user = '​root';​
 +  mysql> flush privileges;
 +  ​
 +комментируем
 +
 +**/​etc/​rc.conf**
 +
 +  mysql_args=""​
 +
 +Перезапускаем mysql
 +
 +  /​usr/​local/​etc/​rc.d/​mysql-server restart
  
 ====Ubuntu==== ====Ubuntu====
Строка 24: Строка 39:
 Запускаем mysql в режиме бзе проверки паролей ​ Запускаем mysql в режиме бзе проверки паролей ​
  
-  sudo mysqld --skip-grant-tables --skip-networking+  sudo mysqld --skip-grant-tables --skip-networking ​&
  
 В другое консоли запускаем msyql  клиент В другое консоли запускаем msyql  клиент
Строка 34: Строка 49:
   mysql> update mysql.user set password = password(''​) where user = '​root';​   mysql> update mysql.user set password = password(''​) where user = '​root';​
   mysql> flush privileges;   mysql> flush privileges;
 +
 +**для ​ 5.7 и выше **
 +
 +  UPDATE mysql.user
 +    SET authentication_string = PASSWORD('​MyNewPass'​),​ password_expired = '​N'​
 +    WHERE User = '​root'​ AND Host = '​localhost';​
 +  FLUSH PRIVILEGES;
  
  
Строка 88: Строка 110:
  
   mysql -u root -p   mysql -u root -p
 +
 +====CentOS====
 +===6.0===
 +
 +Останавливаем демон MySQL и запускаем его без чтения таблицы юзеров ​
 +
 +
 +    /​etc/​init.d/​mysqld stop
 +    /​usr/​libexec/​mysqld --skip-grant-tables --user=root &
 +
 +Теперь,​ как нам стал доступен MySQL с полным доступом,​ сбрасываем пароль на единицу:​
 +
 +    mysql -u root -e "​UPDATE mysql.user SET Password=PASSWORD('​1'​) WHERE User='​root';​ FLUSH PRIVILEGES;"​
 +
 +После этого останавливаем пущенный нами инстанс MySQL и запускаем обычный сервер:​
 +
 +    killall -9 -r mysqld
 +    /​etc/​init.d/​mysqld start
 +
 +===7.0===
 +
 +  * останавливаем mysql
 +
 +  systemctl stop mysqld
 +
 +  * устанавливаем переменную среды для входа без пароля ​
 +
 +  systemctl set-environment MYSQLD_OPTS="​--skip-grant-tables"​
 +
 +  * перезапускаем mysql
 +
 +  systemctl start mysqld
 +
 +  * заходим под рутом
 +
 +  mysql -u root
 +
 +  * обнуляем паролья
 +
 +  mysql> UPDATE mysql.user SET authentication_string = PASSWORD(''​)
 +     WHERE User = '​root'​ AND Host = '​localhost';​
 +  mysql> FLUSH PRIVILEGES;
 +  mysql> quit
 +
 +  * останавливаем базу
 +
 +  systemctl stop mysqld
 +
 +  * обнуляем переменную вход без пароля
 +
 +  systemctl unset-environment MYSQLD_OPTS
 +
 +  * запускаем базу в нормальном режиме:​
 +
 +  systemctl start mysqld
 +
 +  * тестового заходим:​
 +
 +  mysql -u root -p
 +
 +
 +====Open SuSE====
 +
 +Остановить базу
 +  /​etc/​init.d/​mysql stop
 +
 +
 +Запустить без привелений
 +
 +  # mysqld_safe --skip-grant-tables &
 +  ​
 +Теперь,​ как нам стал доступен MySQL с полным доступом,​ сбрасываем пароль на единицу:​
 +
 +  mysql -u root -e "​UPDATE mysql.user SET Password=PASSWORD('​1'​) WHERE User='​root';​ FLUSH PRIVILEGES;"​
 +
 +Остановить mysql
 +
 +  /​etc/​init.d/​mysql stop
 +
 +Запустить в нормальном режиме
 +
 +  /​etc/​init.d/​mysql start