Maison  >  Article  >  base de données  >  Que faire si l'initialisation de la base de données MySQL échoue

Que faire si l'initialisation de la base de données MySQL échoue

藏色散人
藏色散人original
2020-11-13 09:54:5228478parcourir

La solution à l'échec d'initialisation de la base de données mysql : recherchez et ouvrez d'abord le fichier my.ini ; puis commentez le répertoire de données dans le fichier my.ini ; suivez enfin les instructions pour remplacer UTF8 par UTF8MB4.

Que faire si l'initialisation de la base de données MySQL échoue

Recommandé : "tutoriel vidéo mysql

Installation de MySQL8, l'initialisation de la base de données a échoué lors de l'installation

À propos du processus

  • Télécharger et extraire dans le fichier vous souhaitez installer Par exemple, le répertoire cette fois se trouve directement sous le lecteur C. C:mysql-8.0.17-winx64

  • Configurez les variables d'environnement, ajoutez C:mysql-8.0.17-winx64bin à la variable d'environnement PATH et faites attention au signe ";" 🎜>

  • Créez un nouveau fichier my.ini dans le répertoire C:mysql-8.0.17-winx64.

  • En écrivant le contenu du fichier my.ini, le contenu est sujet aux erreurs

  • Initialisation de la base de données, [je viens de rester bloqué ici] Si l'initialisation réussit, il se peut qu'il y ait Le mot de passe par défaut pour MySQL

  • Installer la base de données

  • Commencer à se connecter à la base de données [Utiliser le mot de passe par défaut en 5 pour vous connecter pour la première fois]

  • Changer le mot de passe

Que faire si linitialisation de la base de données MySQL échoue J'ai trouvé quelques tutoriels sur le Internet comme référence. Il existe une solution que j'ai vue dans un commentaire. Le blog d'origine n'est plus disponible. La solution est la suivante, qui consiste à commenter la ligne datadir.

Le principal problème rencontré est que lors de l'écriture du fichier my.ini, il peut y avoir des erreurs de format et de contenu. Faites attention au format et essayez """""/". Il y a **"C. :mysql-8.0.17-winx64"** et essayez d'ajouter des guillemets doubles. Ce qui suit est mon fichier my.ini. Le contenu général est le même que celui du blog de référence. Les emplacements marqués sont quelques-unes des modifications que j'ai apportées après avoir signalé l'erreur.

Que faire si linitialisation de la base de données MySQL échoue L'erreur signalée sur la ligne de commande lors de l'initialisation de la base de données est la suivante :

C:\mysql-8.0.17-winx64\bin>mysqld --initialize --console
2019-08-24T13:33:22.622321Z 0 [System] [MY-013169] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server in progress as process 8404
2019-08-24T13:33:22.624188Z 0 [Warning] [MY-013243] [Server] --character-set-server: The character set UTF8MB3 is deprecated and will be removed in a future release. Please consider using UTF8MB4 instead.
2019-08-24T13:33:22.625619Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
2019-08-24T13:33:22.625635Z 0 [ERROR] [MY-013236] [Server] The designated data directory C:\mysql-8.0.17-winx64\data\ is unusable. You can remove all files that the server added to it.
2019-08-24T13:33:22.643590Z 0 [ERROR] [MY-010119] [Server] Aborting
2019-08-24T13:33:22.643744Z 0 [System] [MY-010910] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe: Shutdown complete (mysqld 8.0.17)  MySQL Community Server - GPL.

Que faire si linitialisation de la base de données MySQL échoue

Le problème devrait être le dossier de données. À ce moment-là, il n'y avait pas de dossier de données nouvellement généré dans le répertoire C: mysql-8.0.17-winx64

Commentez la ligne datadir dans le fichier my.ini L'erreur a disparu et les données. Le dossier est également apparu. , comme indiqué ci-dessous :
Que faire si linitialisation de la base de données MySQL échoue La solution à la guerre est de remplacer
UTF8 par UTF8MB4 selon les invites. Les changements sont marqués dans la figure ci-dessus.

2019-08-24T13:33:22.624188Z 0 [Warning] [MY-013243] [Server] --character-set-server: The character set UTF8 is deprecated and will be removed in a future release. Please consider using UTF8MB4 instead.

Enfin initialisé avec succès, comme le montre l'image :


Que faire si linitialisation de la base de données MySQL échoue Processus global

C:\mysql-8.0.17-winx64\bin>mysqld --initialize --console
2019-08-24T13:37:11.590803Z 0 [System] [MY-013169] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server in progress as process 2484
2019-08-24T13:37:15.862830Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 37swG%65Qjf1
2019-08-24T13:37:17.783854Z 0 [System] [MY-013170] [Server] C:\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server has completed

C:\mysql-8.0.17-winx64\bin>mysqld --install
The service already exists!
The current server installed: C:\mysql-8.0.17-winx64\bin\mysqld.exe MySQL

C:\mysql-8.0.17-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。


C:\mysql-8.0.17-winx64\bin>mysql -u root -p
Enter password: ************
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.17

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '111111';
Query OK, 0 rows affected (0.01 sec)

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