我已经通过 yum 安装了 mysql、mysql-server 和 mysql-devel:
yum install mysql mysql-server mysql-devel
我创建了一些数据库和用户,但最终破坏了一些表,因此我尝试删除 mysql,以便可以全新安装。
我发出了以下命令:
#To remove the packages:
yum remove mysql mysql-server mysql-devel
#To remove the data
rm -rf /var/lib/mysql
现在,我再次安装 mysql、mysql-server 和 mysql-devel,然后运行 mysql,mysql.user 表包含多个“root”用户,并且旧数据库仍然可用。
我运行了以下命令尝试查找 mysql 的任何配置文件或其他内容,但无济于事:
find . -name \*.sql\*
whereis mysql
whereis sql
grep -hilr "old_database_name" *
grep -hilr "mysql" *
我错过了什么?
答案1
删除软件包时,软件包不会删除数据目录/var/lib/mysql
。因此,您需要做的是删除软件包,然后:
mv /var/lib/mysql /var/lib/mysql.old
现在重新安装软件包,数据库应该恢复到原始状态。一旦您确认不需要旧数据库中的任何数据,您就可以使用以下命令删除它们:
rm -rf /var/lib/mysql.old
这两步过程还有一个好处,如果你不小心重新运行了其中任何一个命令,比如在回顾命令行历史记录时,那么任何一个命令都不会破坏生产数据。