如何将mysql恢复出厂设置?

问题描述 投票:0回答:2

所以我删除了mysql.user中的所有用户并重新启动了mysql数据库。现在我似乎无法再次进入 mysql 或如何重置它,就好像它是全新安装一样。我尝试使用

brew uninstall mariadb
卸载它,然后使用
brew install mariadb
重新安装它,但这并没有解决问题。我能找到的唯一资源是关于如何从 mysql 内部恢复用户(我正在努力进入)或如何通过删除某些目录中的文件(这些目录本来就不存在)来完全删除 mysql。

mysql macos mariadb homebrew
2个回答
1
投票

有两种方法:
方法一:
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:路径可能和你的不一样,需要根据自己的数据目录进行更改


0
投票

我最终找到了解决问题的方法。我最终并没有从一个来源获得它,而是将一堆不同的东西拼凑在一起,直到我发现这有效。

  1. 停止服务器:
    brew services stop mysql
  2. 使用以下命令启动它:
    mysql --skip-grant-tables
  3. 运行此命令以修复没有用户的表:
    mysql_upgrade --force
  4. 强制终止 mysql:
    ps -ef | grep mysql
    ,然后是
    kill -9 <pid>
  5. 再次启动服务器:
    brew services start mariadb

我确实首先尝试了

mysql_install_db
而不是某些网站建议的
mysql_upgrade --force
,但这不起作用,因为
mysql.user
表仍然存在。它只是空的。

© www.soinside.com 2019 - 2024. All rights reserved.