Error during Plesk upgrade: Cannot load from mysql.proc.

Created:

2016-11-16 13:24:53 UTC

Modified:

2017-04-24 11:16:22 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Error during Plesk upgrade: Cannot load from mysql.proc.

Applicable to:

  • Plesk 12.5 for Linux
  • Plesk 10.4 for Linux
  • Plesk 11.0 for Linux
  • Plesk 11.5 for Linux
  • Plesk 12.0 for Linux
  • Plesk 10.x and below for Linux

Symptoms

  1. Plesk upgrade fails with the following error:

    ERROR while trying to upgrade APSC SQL database from 11.1.0
    
  2. The following error can be found in /tmp/plesk_11.5.30_installation.log or /tmp/autoinstaller3.log file:

    ERROR 1548 (HY000) at line 67: Cannot load from mysql.proc. The table is probably corrupted
    
  3. Attempt to drop a procedure (even if it does not exist) fails:

    mysql> DROP PROCEDURE IF EXISTS test1234;
    ERROR 1548 (HY000): Cannot load from mysql.proc. The table is probably corrupted
  4. In /var/log/mysqld.log the following errors can be found:

    # grep ERROR /var/log/mysqld.log
    [ERROR] Missing system table mysql.proxies_priv; please run mysql_upgrade to create it
    .....
    [ERROR] Native table 'performance_schema'.'events_waits_current' has the wrong structure
    [ERROR] Native table 'performance_schema'.'events_waits_history' has the wrong structure
    .....
    [ERROR] Incorrect definition of table mysql.proc: expected column 'comment' at position 15 to have type text, found type char(64).

Cause

The structure of the mysql tables is incorrect or has not been upgraded.

Resolution

  1. Make sure mysql database is not corrupted with the mysqlcheck command:

    # MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysqlcheck -uadmin mysql
    mysql.columns_priv                                 OK
    mysql.db                                           OK
    .....
    mysql.time_zone_transition_type                    OK
    mysql.user                                         OK
  2. Repair the table if necessary:

    # MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysql -uadmin mysql -Ne"REPAIR TABLE mysql.proc"
    +------------+--------+----------+----------+
    | Table      | Op     | Msg_type | Msg_text |
    +------------+--------+----------+----------+
    | mysql.proc | repair | status   | OK       |
    +------------+--------+----------+----------+
  3. Change the type of proc.comment row as below:

    # MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysql -uadmin mysql -Ne"alter table proc change comment comment text"
    Query OK, 0 rows affected (0.01 sec)Records: 0 Duplicates: 0 Warnings: 0
  4. Upgrade MySQL server:

    # MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysql_upgrade -u admin
    Looking for 'mysql' as: mysql
    Looking for 'mysqlcheck' as: mysqlcheck
    Running 'mysqlcheck with default connection arguments
    Running 'mysqlcheck with default connection arguments
    apsc.aps_application                               OK
    apsc.aps_application_backup                        OK
    ....
    mysql.columns_priv                                 OK
    mysql.db                                           OK
    ....
    psa.Configurations                                 OK
    psa.DashboardPreset                                OK
    ....
    Running 'mysql_fix_privilege_tables'...
    OK
Have more questions? Submit a request
Please sign in to leave a comment.