所以我删除了mysql.user中的所有用户并重新启动了mysql数据库。现在我似乎无法再次进入 mysql 或如何重置它,就好像它是全新安装一样。我尝试使用
brew uninstall mariadb
卸载它,然后使用 brew install mariadb
重新安装它,但这并没有解决问题。我能找到的唯一资源是关于如何从 mysql 内部恢复用户(我正在努力进入)或如何通过删除某些目录中的文件(这些目录本来就不存在)来完全删除 mysql。
有两种方法:
方法一:
1.卸载mysql数据库,删除/data目录下的数据文件,然后重新安装
方法二:
1.停止mysql服务(systemctl stop mysqld)
2.删除/data目录下的文件(rm -fr /data/*)
3.初始化mysql(mysqld --defaults-file=/mysql/my.cnf --initialize --user=mysql --basedir=/mysql/app/mysql --datadir=/mysql/data/3306/data/)
PS1:路径可能和你的不一样,需要根据自己的数据目录进行更改
我最终找到了解决问题的方法。我最终并没有从一个来源获得它,而是将一堆不同的东西拼凑在一起,直到我发现这有效。
brew services stop mysql
mysql --skip-grant-tables
mysql_upgrade --force
ps -ef | grep mysql
,然后是kill -9 <pid>
brew services start mariadb
我确实首先尝试了
mysql_install_db
而不是某些网站建议的 mysql_upgrade --force
,但这不起作用,因为 mysql.user
表仍然存在。它只是空的。