Question

Ireceived une Alerte temps d'arrêt de Nagios que MySQL était sur un hôte. Je me suis connecté à l'hôte et a trouvé l'erreur suivante dans le fichier mysql error.log. Quelles sont les mesures appropriées pour résoudre ce?

root@ubuntu:/var/log# tail -f mysql/error.log
101202 11:09:21 [ERROR] Can't open the mysql.plugin table. Please run 
                        mysql_upgrade to create it.
101202 11:09:21  InnoDB: Started; log sequence number 0 44233
101202 11:09:21 [ERROR] /usr/sbin/mysqld: Can't find file: './mysql/host.frm' 
                        (errno: 13)
101202 11:09:21 [ERROR] Fatal error: Can't open and lock privilege tables: 
                        Can't find file: './mysql/host.frm' (errno: 13)
101202 11:09:51 [Note] Plugin 'FEDERATED' is disabled.
                       /usr/sbin/mysqld: Can't find file: './mysql/plugin.frm' 
                       (errno: 13)
101202 11:09:51 [ERROR] Can't open the mysql.plugin table. Please run 
                        mysql_upgrade to create it.
101202 11:09:52  InnoDB: Started; log sequence number 0 44233
101202 11:09:52 [ERROR] /usr/sbin/mysqld: Can't find file: './mysql/host.frm' 
                        (errno: 13)
101202 11:09:52 [ERROR] Fatal error: Can't open and lock privilege tables: 
                        Can't find file: './mysql/host.frm' (errno: 13)
101202 11:10:22 [Note] Plugin 'FEDERATED' is disabled.
                       /usr/sbin/mysqld: Can't find file: './mysql/plugin.frm' 
                       (errno: 13)
101202 11:10:22 [ERROR] Can't open the mysql.plugin table. Please run 
                        mysql_upgrade to create it.
101202 11:10:22  InnoDB: Started; log sequence number 0 44233
101202 11:10:22 [ERROR] /usr/sbin/mysqld: Can't find file: './mysql/host.frm' 
                        (errno: 13)
101202 11:10:22 [ERROR] Fatal error: Can't open and lock privilege tables: 
                        Can't find file: './mysql/host.frm' (errno: 13)
Était-ce utile?

La solution

Figure pourquoi MySQL ne peut pas trouver ses tables. Accédez au répertoire de données MySQL et recherchez le sous-répertoire mysql (correspondant à la base de données mysql qui contient des choses comme les utilisateurs, procs, privilèges, etc.). Peut-être que quelqu'un a supprimé la base de données de mysql. Peut-être quelqu'un réenregistrés votre my.cnf fichier de configuration avec un pointage dans le répertoire de données erronées.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top