Que faire si l'initialisation de la base de données MySQL échoue
藏色散人
Libérer: 2021-07-29 14:13:45
original
28946 Les gens l'ont consulté
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.
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
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.
L'erreur signalée sur la ligne de commande lors de l'initialisation de la base de données est la suivante :
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 asprocess 8404
2019-08-24T13:33:22.624188Z 0 [Warning] [MY-013243] [Server] --character-set-server: The character set UTF8MB3 is deprecated andwill 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.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.
Copier après la connexion
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 : La solution à la guerre est de remplacer UTF8 par UTF8MB4 selon les invites. Les changements sont marqués dans la figure ci-dessus.
1
2019-08-24T13:33:22.624188Z 0 [Warning] [MY-013243] [Server] --character-set-server: The character set UTF8 is deprecated andwill be removed in a future release. Please consider using UTF8MB4 instead.
Copier après la connexion
Enfin initialisé avec succès, comme le montre l'image :
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 asprocess 2484
2019-08-24T13:37:15.862830Z 5 [Note] [MY-010454] [Server] A temporary password is generated forroot@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 endwith ; or\g.
Your MySQL connection id is 8
Server version: 8.0.17
Copyright (c) 2000, 2019, Oracle and/orits affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/orits
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or'\h' forhelp. 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>
Copier après la connexion
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!
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