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)
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