FreeBSD
/etc/rc.conf
mysql_args="--skip-grant-tables"
Перезапускаем mysql
/usr/local/etc/rc.d/mysql-server restart
Входим с правами root
mysql -u root
Обнуление пароля
mysql> update user set authentication_string=PASSWORD('') where User='root';
Комментируем
/etc/rc.conf
mysql_args=""
Перезапускаем mysql
/usr/local/etc/rc.d/mysql-server restart
Входим еще раз
mysql -u root
Обновляем пароль
mysql> ALTER USER USER() IDENTIFIED BY '';
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/8.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
Запуск без паролей для Percona-Server
mysqld --initialize-insecure
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