Symptoms
-
MySQL has been upgraded and now fails to start.
-
The following error message appears in
/var/log/mysqld.log
when trying to start MySQL:[ERROR] Fatal error: mysql.user table is damaged. Please run mysql_upgrade.
-
Plesk is not accessible with the following error message in a browser:
PLESK_INFO: ERROR: Zend_Db_Adapter_Exception: SQLSTATE[HY000] [2002] No such file or directory
Additionally, an exception has occurred while trying to report this error: Zend_Exception
No entry is registered for key 'translate' (Abstract.php:144)
Cause
MySQL 5.1 has been upgraded to 5.5 without running the “mysql_upgrade” command.
Resolution
-
Connect to the Plesk server via SSH.
-
Add the “skip-grant-tables” record to log in to MySQL:
2.1. Open MySQL configuration file
/etc/my.cnf
in a text editor. In this example we use the vi editor:# vi /etc/my.cnf
2.2. Add “skip-grant-tables” on a new line under the [mysqld] section:
[mysqld]
skip-grant-tables
<...>2.3. Save the changes and close the file.
-
Start MySQL:
# service mysqld start
OR
# service mysql start
-
Complete the MySQL upgrade:
# mysql_upgrade
-
Remove the line with “skip-grant-tables” from the
/etc/my.cnf
file. -
Restart the MySQL service using one of these commands:
# service mysqld restart
# service mysql start