J'ai rencontré des problèmes avec MySQL sur mon CentOS. J'ai eu quelques problèmes et sauvegardé ma base de données et enlevé mysql avec toutes les dépendances .
yum groupinstall "MySQL Database"
Installé sans erreur.
Lancer le démon mysql:
service mysqld start
Timeout error occurred trying to start MySQL Daemon.
Starting MySQL: [FAILED]
J'ai aussi couru
# /usr/bin/mysql_install_db --user=mysql
Installing MySQL system tables...
120112 1:49:44 [ERROR] Error message file '/usr/share/mysql/english/errmsg.sys' had only 480 error messages,
but it should contain at least 481 error messages.
Check that the above file is the right version for this program!
120112 1:49:44 [ERROR] Aborting
Installation of system tables failed!
Examine the logs in /var/lib/mysql for more information.
You can try to start the mysqld daemon with:
/usr/libexec/mysqld --skip-grant &
and use the command line tool
/usr/bin/mysql to connect to the mysql
database and look at the grant tables:
Shell> /usr/bin/mysql -u root mysql
mysql> show tables
Try 'mysqld --help' if you have problems with paths. Using --log
gives you a log in /var/lib/mysql that may be helpful.
The latest information about MySQL is available on the web at
http://www.mysql.com
Please consult the MySQL manual section: 'Problems running mysql_install_db',
and the manual section that describes problems on your OS.
Another information source is the MySQL email archive.
Please check all of the above before mailing us!
And if you do mail us, you MUST use the /usr/bin/mysqlbug script!
Vérification des journaux:
less /var/log/mysqld.log
Le fichier journal est vide. Je ne sais même pas comment le déboguer et je ne sais pas quoi faire.
Des recommandations?
Je vous remercie
C’est parfois parce que vous avez manqué d’espace disque ... lancez donc un df -h
sommaire pour en être sûr! (Ce JUST est arrivé à moi: P).
Je sais que vous avez posé cette question il y a longtemps, mais depuis les personnes qui recherchent "Une erreur de dépassement de délai s'est produite lors de la tentative de démarrage du démon MySQL." peut finir ici, il existe plusieurs solutions possibles à cette erreur. En voici quelques uns:
Tout d'abord, au lieu d'exécuter service mysqld start
ou service mysqld restart
, essayez d'exécuter:
$ service mysqld stop; mysqld_safe &
Il y a des problèmes connus avec les lignes mysqladmin
dans le script /etc/init.d/mysqld
.
Si cela ne fonctionne pas, essayez les solutions suivantes: vérifiez si l'espace disque disponible est suffisant (en particulier dans /var
):
$ df -h
Recherchez d'éventuels messages d'erreur dans ces fichiers (ils peuvent ne pas tous exister):
# tail -n 30 /var/log/messages
# tail -n 30 /var/log/mysqld.log
# tail -n 30 /var/lib/mysql/*.err
# tail -n 30 /var/log/mysql/error.log
Ensuite, assurez-vous que /etc/my.cnf
utilise ...
socket=/var/lib/mysql/mysql.sock
... et que le répertoire /var/lib/mysql/
existe réellement.
Définissez les autorisations et les propriétés appropriées:
# chown -R mysql.mysql /var/lib/mysql/
# chmod g+w /var/run/mysqld/
# chgrp mysql /var/run/mysqld/
Ne fonctionne toujours pas? Essayez de changer l'adresse de liaison dans my.cnf
en 127.0.0.1 ou 0.0.0.0, ou commentez cette ligne.
Si vous n'avez toujours pas de chance, recherchez plus d'informations sur mysql_install_db
et, puisque votre base de données InnoDB est peut-être endommagée, consultez également set-variable=innodb_force_recovery=6
.
Avant de démarrer le serveur mysql, renommez les fichiers /var/lib/mysql/ib_logfile0
et /var/lib/mysql/ib_logfile0
puis redémarrez le serveur.
sous linux/unix
mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0_old
mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1_old
puis
service mysqld restart
Essaye ça:
rm $(grep socket /etc/my.cnf | cut -d= -f2) && service mysqld start
Dans mon cas, la cause était que j’ai mis key_buffer_size dans /etc/my.cnf quand je l’ai commenté, mysqld a bien démarré.