Maison > Questions et réponses > le corps du texte
J'ai donc supprimé tous les utilisateurs de mysql.user et redémarré la base de données MySQL. Maintenant, je n'arrive pas à accéder à nouveau à MySQL ni à le réinitialiser comme s'il s'agissait d'une nouvelle installation. J'ai essayé de le réinstaller en utilisant brew uninstall mariadb
卸载它,然后使用 brew install mariadb
mais cela n'a pas résolu le problème. Les seules ressources que je peux trouver concernent la façon de restaurer un utilisateur à partir de MySQL (dans lequel j'ai du mal à accéder) ou comment supprimer complètement MySQL en supprimant des fichiers dans certains répertoires (qui n'existent pas en premier lieu). < /p>
P粉9860280392023-12-14 10:11:56
J'ai enfin trouvé une solution à mon problème. Je n'ai pas fini par l'obtenir d'une seule source, mais j'ai bricolé un tas de choses différentes jusqu'à ce que je comprenne que cela fonctionnait.
mysql --skip-grant-tables
mysql_upgrade --force
ps -ef | grep mysql
后跟 kill -9
brew services start mariadb
J'ai d'abord essayé mysql_install_db
au lieu de mysql_install_db
而不是某些网站建议的 mysql_upgrade --force
,但是自从 mysql.user
comme certains sites l'ont suggéré, mais cela n'a pas fonctionné puisque la table mysql.user
est toujours là. C'est juste vide.
P粉6004020852023-12-14 09:05:11
Il existe deux méthodes :
Méthode 1 :
1. Désinstallez la base de données MySQL, supprimez les fichiers de données dans le répertoire /data, puis réinstallez-la
Méthode 2 :
1. Arrêtez le service mysql (systemctl stop mysqld)
2. Supprimez les fichiers du répertoire /data (rm -fr /data/*)
3. Initialisez MySQL (mysqld --defaults-file=/mysql/my.cnf --initialize --user=mysql --basedir=/mysql/app/mysql --datadir=/mysql/data/3306/data/)
PS1 : Le chemin peut être différent du vôtre et doit être modifié en fonction de votre propre répertoire de données