MySQL root changed password went wrong
You may have to do the following
NEWROOTPASSWORD=&quot;Cha@g3m3&quot;
service mysql restart --skip-grant-tables --skip-networking
SQL=&quot;update mysql.user SET password=PASSWORD('${NEWROOTPASSWORD}') WHERE user='root';&quot;
mysql -ANe&quot;${SQL}&quot;
service mysql restart
mysql -uroot -p${NEWROOTPASSWORD}

If you get the mysql prompt, CONGRATULATIONS !!!
Then, go change the password properly. Don't use the exclamation point or semicolon for a password as they mean something to Linux.
MySQL Documentation for this situation: http://dev.mysql.com/doc/refman/5.6/en/resetting-permissions.html
Give it a Try !!!