Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

FreeBSD

/etc/rc.conf

Code Block
languagebash
mysql_args="--skip-grant-tables"

Перезапускаем mysql

Code Block
languagebash
/usr/local/etc/rc.d/mysql-server restart

Обновляем парольВходим с правами root

Code Block
languagebash
mysql -u root

Обнуление пароля

Code Block
languagebash
mysql> update mysql.user set password = passwordauthentication_string=PASSWORD('') where user User= 'root';
mysql> flush privileges;
комментируем

Комментируем

/etc/rc.conf

Code Block
languagebash
mysql_args=""

Перезапускаем mysql

Code Block
languagebash
/usr/local/etc/rc.d/mysql-server restart

Входим еще раз

Code Block
languagebash
mysql -u root

Обновляем пароль

Code Block
languagebash
mysql> ALTER USER USER() IDENTIFIED BY '';


Ubuntu

Проверяем запущен ли сервер mysql

Code Block
languagebash
netstat -tap | grep mysql

Останавливаем сервер mysql

Code Block
languagebash
sudo /etc/init.d/mysql stop

Запускаем mysql в режиме без проверки паролей

Code Block
languagebash
sudo mysqld --skip-grant-tables --skip-networking &

В другое консоли запускаем msyql клиент

Code Block
languagebash
mysql

Обновляем пароль

Code Block
languagebash
mysql> update mysql.user set password = password('') where user = 'root';
mysql> flush privileges;

для 5.7 и выше

Code Block
languagebash
UPDATE mysql.user
  SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'
  WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;

Останавливаем сервер mysql

Code Block
languagebash
sudo mysqladmin shutdown

Запускаем в нормально режиме работы

Code Block
languagebash
sudo start mysql

подключаемся

Code Block
languagebash
mysql -u root -p


Debian

Проверяем запущен ли сервер mysql

Code Block
languagebash
netstat -tap | grep mysql

Останавливаем сервер mysql

Code Block
languagebash
/etc/init.d/mysql stop

Запускаем mysql в режиме без проверки паролей

Code Block
languagebash
sudo -u mysql mysqld --skip-grant-tables --skip-networking &

В другое консоли запускаем msyql клиент

Code Block
languagebash
mysql

Обновляем пароль

Code Block
languagebash
mysql> update mysql.user set password = password('') where user = 'root';
mysql> flush privileges;

Останавливаем сервер mysql

Code Block
languagebash
sudo mysqladmin shutdown

Запускаем в нормально режиме работы

Code Block
languagebash
/etc/init.d/mysql start

подключаемся

Code Block
languagebash
mysql -u root -p


CentOS

6.0

Останавливаем демон MySQL и запускаем его без чтения таблицы юзеров

Code Block
languagebash
 /etc/init.d/mysqld stop
 /usr/libexec/mysqld --skip-grant-tables --user=root &

Теперь, как нам стал доступен MySQL с полным доступом, сбрасываем пароль на единицу:

Code Block
languagebash
mysql -u root -e "UPDATE mysql.user SET Password=PASSWORD('1') WHERE User='root'; FLUSH PRIVILEGES;"

После этого останавливаем пущенный нами инстанс MySQL и запускаем обычный сервер:

Code Block
languagebash
killall -9 -r mysqld
/etc/init.d/mysqld start

7.0/8.0

  • останавливаем mysql
Code Block
languagebash
systemctl stop mysqld
  • устанавливаем переменную среды для входа без пароля
Code Block
languagebash
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
  • перезапускаем mysql
Code Block
languagebash
systemctl start mysqld
  • заходим под рутом


Code Block
languagebash
mysql -u root


  • обнуляем пароль


Code Block
languagebash
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('')
   WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit


  • останавливаем базу
Code Block
languagebash
systemctl stop mysqld


  • обнуляем переменную вход без пароля


Code Block
languagebash
systemctl unset-environment MYSQLD_OPTS




  • запускаем базу в нормальном режиме:


Code Block
languagebash
systemctl start mysqld




  • тестового заходим:


Code Block
languagebash
mysql -u root -p


Запуск без паролей для Percona-Server


Code Block
mysqld --initialize-insecure 




Open SuSE

Остановить базу

Code Block
languagebash
/etc/init.d/mysql stop

Запустить без привелений

Code Block
languagebash
mysqld_safe --skip-grant-tables &

Теперь, когда стал доступен MySQL с полным доступом, сбрасываем пароль на единицу:

Code Block
languagebash
mysql -u root -e "UPDATE mysql.user SET Password=PASSWORD('1') WHERE User='root'; FLUSH PRIVILEGES;"

Остановить mysql

Code Block
languagebash
/etc/init.d/mysql stop

Запустить в нормальном режиме

Code Block
languagebash
/etc/init.d/mysql start