MySQL root problems (access denied for root user)

Solution 1:

You can start MySQL with the authentication disabled. From there you can create/delete the administrative account for MySQL.

The details you can find in the MySQL documentation: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

  1. Shutdown MySQL

  2. Start MySQL with: mysqld --skip-grant-tables --skip-networking

  3. In mysql run:

    UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
    

    For newer MySQL versions:

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
    GRANT ALL PRIVILEGES ON \*.\* TO 'root'@'localhost' WITH GRANT OPTION;
    
  4. Shutdown MySQL

  5. Start MySQL as you usually do.

Solution 2:

Found the solution -- This is caused by updating MySQL from MySQL 5.1 to MySQL 5.5 and moving the authentication schema (the MySQL database itself) along with it. As there are core updates to this schema using it with a 5.5 database simply won't work causing two main bugs: Cannot GRANT privileges as root Mysql users deleted