Maison > base de données > tutoriel mysql > Le service MySQL n'a pas pu démarrer

Le service MySQL n'a pas pu démarrer

王林
Libérer: 2023-05-23 13:17:07
original
2997 Les gens l'ont consulté

MySQL est un système de gestion de bases de données relationnelles open source largement utilisé dans le domaine de la technologie Internet. Cependant, lors de l'utilisation de MySQL, vous pouvez rencontrer le problème de l'échec du démarrage du service MySQL.

Il existe de nombreuses raisons pour lesquelles MySQL ne démarre pas. Cet article présentera quelques raisons courantes et proposera des solutions.

  1. Occupation du port

Lors du démarrage du service MySQL, si le port est occupé, MySQL ne démarrera pas. Dans ce cas, nous pouvons résoudre le problème grâce aux méthodes suivantes :

Tout d'abord, nous devons confirmer que le numéro de port par défaut de MySQL est 3306. Nous pouvons utiliser la commande suivante pour vérifier :

$ mysqladmin -h localhost -u root -p status
Copier après la connexion

Si MySQL n'est pas actuellement démarré, il affichera "mysqladmin : erreur d'échec de connexion au serveur à 'localhost'", sinon les informations sur l'état de MySQL seront renvoyées.

Nous pouvons utiliser la commande suivante pour vérifier quels processus utilisent actuellement le port 3306 :

$ sudo lsof -i:3306
Copier après la connexion

S'il existe d'autres processus utilisant le port 3306 dans les informations renvoyées, vous devez arrêter le processus ou définir MySQL sur un autre port inoccupé.

Sous système Linux, nous pouvons résoudre le problème en modifiant le numéro de port dans le fichier de configuration MySQL. Les détails sont les suivants :

$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

#修改以下行
port = 3306

#修改为其他可用端口
port = 3307
Copier après la connexion

Une fois la modification terminée, redémarrez simplement le service MySQL.

  1. Dommages au fichier de base de données

Si le fichier de base de données MySQL est endommagé, cela peut également provoquer un échec de démarrage. Pour cette situation, nous pouvons résoudre le problème grâce aux méthodes suivantes :

Tout d'abord, nous devons entrer dans le répertoire de données MySQL et vérifier si le fichier de base de données est endommagé. Sous le système Ubuntu, le répertoire de données MySQL est généralement /var/lib/mysql/. Nous pouvons utiliser la commande suivante pour entrer dans le répertoire :

$ cd /var/lib/mysql/
Copier après la connexion

Après être entré dans le répertoire, nous pouvons utiliser la commande suivante pour vérifier si les fichiers de données sont normaux :

$ sudo mysqlcheck -u root -p --auto-repair --check --all-databases
Copier après la connexion

Cette commande vérifiera et réparera toutes les bases de données.

Si le fichier de données est endommagé de manière irréparable, nous devons effectuer une récupération des données. À ce stade, nous devons d'abord sauvegarder le fichier de base de données MySQL d'origine. La méthode spécifique est la suivante :

$ sudo service mysql stop
$ sudo cp -r /var/lib/mysql /var/lib/mysql-backup
Copier après la connexion

Une fois la sauvegarde terminée, nous pouvons essayer d'utiliser la commande mysql_upgrade pour mettre à jour la base de données MySQL vers la dernière version. La commande spécifique est la suivante :

$ sudo mysql_upgrade -u root -p
Copier après la connexion

Si le problème ne peut toujours pas être résolu, nous pouvons envisager de réinstaller le serveur MySQL ou de restaurer les données à partir des sauvegardes existantes.

  1. Autorisations utilisateur

Si les autorisations utilisateur MySQL sont insuffisantes, cela entraînera également un échec de démarrage. Pour cette situation, nous pouvons résoudre le problème à l'aide des méthodes suivantes :

Sous la ligne de commande MySQL, des messages d'erreur tels que "Accès refusé pour l'utilisateur 'root'@'localhost'" apparaîtront parfois. C'est parce que l'utilisateur MySQL a. autorisations insuffisantes causées par.

Nous pouvons résoudre ce problème grâce aux méthodes suivantes :

Tout d'abord, sous le compte root de MySQL, nous pouvons interroger les autorisations de l'utilisateur actuel :

mysql> SHOW GRANTS FOR CURRENT_USER;
Copier après la connexion

Cette commande renverra les informations d'autorisation de l'utilisateur actuel dans MySQL. Si les autorisations de l'utilisateur actuel sont insuffisantes, nous pouvons utiliser la commande suivante pour configurer des autorisations plus élevées pour l'utilisateur :

mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';
mysql> FLUSH PRIVILEGES;
Copier après la connexion

Cette commande autorise l'utilisateur 'nom d'utilisateur' sur localhost, lui donnant toutes les autorisations dans MySQL. La dernière commande consiste à actualiser les autorisations MySQL.

Résumé

Lors de l'utilisation de MySQL, il est très courant que MySQL ne démarre pas pour diverses raisons. Cet article présente plusieurs problèmes courants et solutions, notamment : l'occupation des ports, l'endommagement des fichiers de base de données et les problèmes d'autorisation des utilisateurs. Lorsqu'ils rencontrent le problème de l'échec du démarrage du service MySQL, les lecteurs peuvent essayer les méthodes fournies dans cet article une par une. Je pense que la plupart des problèmes peuvent être résolus.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal