=====Обнуление пароля в MySQL===== ====FreeBSD==== **/etc/rc.conf** mysql_args="--skip-grant-tables" Перезапускаем mysql /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==== Проверяем запущен ли сервер 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==== ===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