J'ai également eu ce problème lors de la tentative de démarrage du serveur, de sorte que la plupart des réponses ici qui disent simplement de démarrer le serveur n'ont pas fonctionné. La première chose que vous pouvez faire est d'exécuter ce qui suit pour voir s'il y a des erreurs de configuration:
/usr/sbin/mysqld --verbose --help 1>/dev/null
J'ai eu une erreur qui est apparue:
160816 19:24:33 [Note] /usr/sbin/mysqld (mysqld 5.5.50-0ubuntu0.14.04.1-log) starting as process 9461 ...
160816 19:24:33 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
160816 19:24:33 [Note] Plugin 'FEDERATED' is disabled.
160816 19:24:33 [ERROR] /usr/sbin/mysqld: unknown variable 'innodb-online-alter-log-max-size=4294967296'
160816 19:24:33 [ERROR] Aborting
Un simple grep -HR "innodb-online-alter-log-max-size" /etc/mysql/
m'a montré exactement quel fichier contenait la ligne incriminée, j'ai donc supprimé cette ligne du fichier.
Ensuite, en vérifiant mon /var/log/mysql/error.log
dossier, j'avais:
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 671088640 bytes!
160816 22:46:46 [ERROR] Plugin 'InnoDB' init function returned error.
160816 22:46:46 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
160816 22:46:46 [ERROR] Unknown/unsupported storage engine: InnoDB
160816 22:46:46 [ERROR] Aborting
Sur la base de cette question, la solution acceptée ne fonctionnerait pas car je ne pouvais même pas démarrer le serveur, j'ai donc suivi ce que certains commentaires ont dit et supprimé mes fichiers /var/lib/mysql/ib_logfile0
et /var/lib/mysql/ib_logfile1
.
Cela a permis au serveur de démarrer et j'ai pu me connecter et exécuter des requêtes, mais en vérifiant mon fichier journal des erreurs, il se remplissait rapidement de plusieurs dizaines de milliers de lignes comme ceci:
160816 22:52:15 InnoDB: Error: page 1415 log sequence number 82039318708
InnoDB: is in the future! Current system log sequence number 81640793100.
InnoDB: Your database may be corrupt or you may have copied the InnoDB
InnoDB: tablespace but not the InnoDB log files. See
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html
InnoDB: for more information.
Sur la base d'une suggestion d' ici , pour résoudre ce problème, j'ai fait un mysqldump et une restauration de toutes les bases de données (voir le lien pour plusieurs autres solutions).
$ mysqldump -u root -p --allow-keywords --add-drop-database --comments --hex-blob --opt --quote-names --databases db_1 db_2 db_3 db_etc > backup-all-databases.sql
$ mysql -u root -p < backup-all-databases.sql
Tout semble fonctionner comme prévu maintenant.