Сброс пароля root для mysql (upd: 05.12.2019)
Напоминание! Команды mysql оканчиваются «;» (точкой с запятой)
Если получилось так, что пароль root в mysql был утерян или по каким-то причинам просто почему-то не подходит, то действия следующие. Остановить mysql-сервер.
# /usr/local/etc/rc.d/mysql-server stop
Запустить mysql-сервер с особыми параметрами.
# /usr/local/etc/rc.d/mysql-server start mysqld_safe --skip-grant-tables
Далее должно зайти без пароля командой:
# mysql -u root
Вс следующем блоке кода, надо заменить фразу my_password на желаемый пароль для пользователя root.
mysql> use mysql;
mysql> update user set password=PASSWORD('my_password') where user='root' and host='localhost';
mysql> flush privileges;
mysql> quit;
#Способ 2
Если способ выше не сработал, то юзаем такой вариант. Останавливаем mysql, запускаем вот так:
mysqld_safe --skip-grant-tables --skip-network &
Далее входим командой:
mysql
и устанавливаем новый пароль:
UPDATE mysql.user SET password=password('newpassword') WHERE user='root';
FLUSH PRIVILEGES;
Перезагружаем mysql и проверяем вход без пароля (чтобы убедиться, что не пускает без пароля), а потом проверяем новый пароль.
Если на какой-то стадии произошла ошибка или что-то не сработало (что вполне может быть), то можно посмотреть ещё здесь — https://toster.ru/q/268025.
Официальное руководство mysql по смене пароля root — http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html