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

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博客

相关推荐
全栈老石3 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_21 小时前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12024 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript
加号35 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏5 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker