MySQLのセーフモードを使うことで回避することができる。

以下Shell

service mysqld stop
mysqld_safe --skip-grant-tables &
mysql -uroot

以下MySQL

update user set password=PASSWORD("パスワード") where User='root';
quit

以下Shell

ps aux | grep mysql | grep -v grep | awk '{print "kill -9", $2}'|sh
service mysqld start
mysql -uroot -p

あとは先程設定したパスワードを入力するだけ

関連記事