Maison >base de données >tutoriel mysql >L'erreur Solusi MySQL ne peut pas démarrer
Bonjour les amis, dans cet article, je souhaite partager un tutoriel pour gérer MySQL 8.0 qui ne démarre pas lors de la mise à niveau vers MySQL 8.0
Eh bien, cette erreur s'est produite lors de la mise à niveau de MySQL 5.1.72 vers MySQL 8.0.32 dans l'application Laragon.
Des erreurs qui se produisent comme celle-ci lorsque je démarre All dans l'application Laragon.
Erreur MySQL 8.0 dans Laragon
Ensuite, j'ai vérifié le fichier journal situé à C:Laragondatamysql-8mysqld.log
Là, j'ai trouvé une erreur comme celle-ci
mysqld: Table 'mysql.plugin' doesn't exist 2023-02-16T23:34:54.041942Z 0 [ERROR] [MY-010735] [Server] Could not open the mysql.plugin table. Please perform the MySQL upgrade procedure.
En dehors de cela, j'ai également trouvé une erreur comme celle-ci
2023-02-16T23:34:54.460889Z 0 [ERROR] [MY-010326] [Server] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist 2023-02-16T23:34:54.462984Z 0 [ERROR] [MY-010952] [Server] The privilege system failed to initialize correctly. For complete instructions on how to upgrade MySQL to a new version please see the 'Upgrading MySQL' section from the MySQL manual.
D'après cette erreur, il est clair que le processus de mise à niveau que j'ai effectué était erroné. L'erreur était que je n'avais pas initialisé MySQL 8.0 en premier, ce qui empêchait MySQL 8.0 de trouver la table dont j'avais besoin.
D'accord, la solution que nous allons faire est donc de lancer MySQL 8.0 avant de démarrer le serveur MySQL.
Ouvrez une invite de commande sous Windows, puis exécutez la commande suivante
mysqld --initialize-insecure
En fait, il y a 2 options, la première utilise –initialize la seconde –initialize-insecure. La seule différence est le mot de passe du compte root. La première option générera un mot de passe aléatoire temporaire. Pour la deuxième option, le compte root n'a pas de mot de passe, mais plus tard nous pouvons définir un mot de passe pour root.
D'accord, le processus de lancement de MySQL 8.0 est terminé, ce devrait être ici que MySQL 8.0 peut être démarré ou que le serveur peut être exécuté sans plus d'erreurs.
Comme nous avons utilisé la deuxième option, cela signifie que le compte root n'a pas de mot de passe, il est donc facilement accessible sans utiliser de mot de passe. Si c'est sur un ordinateur local, ce n'est pas grave, car les besoins de développement Web sont également plus rapides.
Mais si des amis souhaitent ajouter un mot de passe pour le compte root, c'est très simple.
Exécutez d'abord la commande suivante pour accéder à la ligne de commande MySQL.
mysql -u root
Après vous être connecté, exécutez la commande suivante. N'oubliez pas le dernier point-virgule.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password_baru_untuk_root';
Changez new_password_for_root avec le mot de passe souhaité. Alors entrez.
Exécutez maintenant la commande exit pour quitter la ligne de commande MySQL. Exécutez ensuite la commande suivante. Saisissez ensuite le nouveau mot de passe que vous avez créé précédemment.
mysql -u root -p
Bonne chance ?
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!