MySQL智障离谱问题,删了库确还存在、也不能再创建同名库

发布于:2025-02-19 ⋅ 阅读:(21) ⋅ 点赞:(0)

1、问题

        今天跟后端朋友接毕设单子的时候,后端穿过来的【weather.sql】这个文件没弄好,导致这个【weather】数据库的数据是错的,因此我用datagrip的GUI界面直接右键删除,结果就是tmd删不掉,ok,我只能在那新建一个查询控制台,手动输入【drop database weather;】,成功了,一刷新datagrip就看不到这个数据库了

        然而!当我拿到新的数据库文件,打算再次创建这个【weather】数据库的时候,缺报错 “该数据库已存在”,真nm离谱,问了后端的朋友,他说没遇到过这种问题

        朋友建议我不要用软件删除、创建,因为软件会遗留一些缓存文件,所以我换到了终端命令行,一检查,果然我澡尔冯了个臭福的,居然还有,而且离谱的是,他还不给我删除!!!说这个数据库已经存在,我真是掉尔冯的啥币玩意,冯了个臭福的跟我完极限两级反转、极限二人转呢,薛定谔的数据库?该数据库存在不能创建、该数据库不存在不能被删除,他ma德到底它是存在还是不存在啊?

2、解决办法

最终查阅全世界的所有资料以及榨干deepseek的ai对话之后总结了玄学经验:

无法解释,这就是玄学

首先去到mysql的默认数据存放路径(基本人人都一样,即便你的安装路径是自定义的)

C:\ProgramData\MySQL\MySQL Server 8.0\Data

切记,不要去【我的电脑】自己点开,它会隐身消失,你永远没有机会看到这个目录,你只能直接复制这个目录粘贴到我的电脑那打开

实在找不到的话你就输入这个命令,能够找到你的mysql数据存在哪

show global variables like "%datadir%";

会弹出这样的信息,这也是你的mysql数据存放路径

mysql> show global variables like "%datadir%";
+---------------+---------------------------------------------+
| Variable_name | Value                                       |
+---------------+---------------------------------------------+
| datadir       | C:\ProgramData\MySQL\MySQL Server 8.0\Data\ |
+---------------+---------------------------------------------+
1 row in set, 1 warning (0.03 sec)

然后!!关掉所有你打开数据库的软件!!!navicat、datagrip都给我关掉,然后打开cmd终端执行这个命令操作

关闭MySQL服务

net stop mysql

然后,情况1

如果你的data文件夹里有这个你要【删除的数据库文件的目录】,那么直接删除

然后重新启动MySQL服务输入【show databases;】检查还有没有就行了

(启动MySQL服务)

net start mysql

注意,这个命令只有(管理员)有权限,可以打开管理员终端运行

情况2

 我在删除了这个目录下的数据库文件【我的weather数据库】之后,千真万确百分比无敌超级肯定、以我的性命担保绝对没有这个数据库名字的文件夹了,但是还是再重启mysql之后用【show databases;】发现TMD还在!!!

那么,只能再次【关闭MySQL服务】

然后【手动创建】你这个【数据库名字的目录】

然后再【重启MySQL服务】然后执行删除命令

drop database 数据库名;

这时候你就会发现他又出现.......真是见鬼了

然后再检查数据库就没有了,现在再创建数据库就OK了

至今找不到科学的解释,反正以后别用软件创建数据库、删除数据库就行了

3、我找到的有效解决问题的文章来源

1、mysql删除数据库时遇到ERROR 3679 (HY000): Schema directory ‘.\数据库名\‘ does not exist_schema directory does not exist-CSDN博客

 

2、mysql删除数据库时遇到ERROR 3679 (HY000): Schema directory ‘.\数据库名\‘ does not exist_数据库_叶子#@-腾讯云开发者社区  

3、【Mysql】Schema directory ‘.\reggie‘ already exists. This must be resolved manually_this must be resolved manually (e.g. by moving the-CSDN博客 

4、MySQL在删除数据库之后,创建相同名字的数据库时报错解决方法_schema directory-CSDN博客 


网站公告

今日签到

点亮在社区的每一天
去签到