Maison  >  Article  >  base de données  >  Que dois-je faire si l’espace disque dans Ubuntu est plein et que MySQL ne peut pas être démarré ?

Que dois-je faire si l’espace disque dans Ubuntu est plein et que MySQL ne peut pas être démarré ?

Y2J
Y2Joriginal
2017-05-24 13:56:422202parcourir

Hier, j'ai rencontré le problème selon lequel la base de données MySQL ne pouvait pas être redémarrée. Je pensais que cela était dû à des autorisations. Plus tard, j'ai découvert que l'invite était due à un espace disque insuffisant. Je l'ai donc résolu en recherchant des informations pertinentes. , l'article suivant présente principalement comment utiliser Ubuntu. Les amis dans le besoin peuvent se référer à la solution en cas d'échec de démarrage de MySQL en raison d'un espace disque insuffisant.

Avant-propos

Récemment, j'ai ajouté deux champs à une table de la base de données, puis cela a provoqué quelque chose comme un espace disque insuffisant, puis la base de données a échoué. La connexion a été déconnectée et je n'ai pas pu m'y connecter. Plus tard, j'ai finalement résolu le problème après y avoir réfléchi. Cet article est vraiment effrayant. à un espace disque insuffisant.

La méthode est la suivante

Système d'exploitation : Ubuntu, MySQL ne peut pas démarrer en raison d'un espace disque insuffisant, ce qui entraînera le problèmes suivants :


root@iZ28z558vv0Z:/etc/mysql# mysql -u root -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
root@iZ28z558vv0Z:/b# service mysql start
start: Job failed to start
root@iZ28z558vv0Z:/var/lib# service mysqld start
mysqld: unrecognized service

Solution : Trouver le fichier de configuration de mysql my.cnf :


root@iZ28z558vv0Z:/etc/mysql# ls
conf.d debian.cnf debian-start my.cnf
root@iZ28z558vv0Z:/etc/mysql# vi my.cnf

Les données de l'élémentdir dans le fichier s'affichent /var/lib/mysql


[mysqld]
#
# * Basic Settings
#
user   = mysql
pid-file  = /var/run/mysqld/mysqld.pid
socket   = /var/run/mysqld/mysqld.sock
port   = 3306
basedir   = /usr
datadir   = /var/lib/mysql
tmpdir   = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking

Comme l'espace disque est insuffisant, nous devons vérifier l'emplacement où mysql enregistre les données, l'utilisation de l'espace disque où se trouve datadir ou tmpdir, et vérifier l'utilisation de l'espace disque où se trouve datadir :


root@iZ28z558vv0Z:/var# df /var
Filesystem  1K-blocks  Used Available Use% Mounted on
/dev/xvda1  41151808 39038392   0 100% /

On peut voir de ce qui précède que la disponibilité de l'espace disque est évidemment de 0, ce qui est la raison pour laquelle MySQL ne peut pas démarrer. Supprimez les autres fichiers du répertoire /var pour libérer de l'espace disque afin de résoudre le problème, puis redémarrez le service mysql.

Résumé

[Recommandations associées]

1 Tutoriel vidéo gratuit MySQL

2. Explication détaillée de innodb_index_stats lors de l'importation de données Erreur lors du conflit de clé primaire de la table

3 Explication des exemples. innodb_autoinc_lock_mode dans mysql

4. Exemple détaillé d'ajout de nouvelles autorisations utilisateur dans MySQL

5 Exemple détaillé de la méthode init_connect dans mysql

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn