Это старая версия документа.


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

FreeBSD

/etc/rc.conf

mysql_args="--skip-grant-tables"

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

/usr/local/etc/rc.d/mysql-server restart

Ubuntu

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

netstat -tap | grep mysql

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

sudo /etc/init.d/mysql stop

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

sudo mysqld --skip-grant-tables --skip-networking &

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

mysql

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

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

для 5.7 и выше

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

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

sudo mysqladmin shutdown

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

sudo start mysql

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

mysql -u root -p

Debian

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

netstat -tap | grep mysql

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

/etc/init.d/mysql stop

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

 sudo -u mysql mysqld --skip-grant-tables --skip-networking &

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

mysql

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

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

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

sudo mysqladmin shutdown

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

/etc/init.d/mysql start

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

mysql -u root -p

CentOS

Останавливаем демон 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

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