yo me stuve pegando en la cabeza con ese mismo problema, hasta q encontre
http://www.solotuweb.com/vc~t~Rescatando-la-ROOT-en-MySQL~id~5501.html
les explico brevemente, ojala les sirva como a mi q me saco de un gran apuro
1: en la shell: mysqld_safe --skip-grant-tables
si sta en servicio /etc/init.d/mysql stop y ya welven a poner el comando y se les qedara como paralizada..Abran otra consola
2: En la consola nueva logueate como root sin pass, te debe permitir hacerlo sin problemas.
3: use mysql; Esto debe permitirte sin problemas

cosa q no pasaba antes!!!
4: yo lo q hice fue un select Host, User,Password from user;
esto pa q me mostrara los q no tenian password y despues un
Delete from user where User='';
5: Hecho esto y no olvidar un flush privileges;
Y problema resuelto, cualqier duda pregunten o mas bien cheqen el enlaze q explica muy bien
http://www.solotuweb.com/vc~t~Rescatando-la-ROOT-en-MySQL~id~5501.html
