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

相关推荐
凌虚10 小时前
面向 MySQL 用户的 PostgreSQL 快速上手指南
数据库·后端·架构
五阿哥永琪10 小时前
MySQL中操作json的函数!
数据库·mysql·json
来者皆善10 小时前
了解Mysql优化吗?如何优化索引?
数据库·mysql
赤壁小虾13 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例
java·前端·数据库
MC皮蛋侠客13 小时前
SQLAlchemy 系列(七):高级建模与高效写入——批量 DML、方言与扩展
数据库·python
奈斯先生Vector14 小时前
把 Midjourney 二次编辑做成生产系统:customId 能力令牌、Action Graph 与 WebUI 精修工作台
数据库·人工智能·架构·aigc·音视频·midjourney
Lethehong14 小时前
双擎并驱·全链路并行:KFS让TB级异构增量同步秒级到达
数据库
MC皮蛋侠客14 小时前
SQLAlchemy 系列(八):AsyncIO、并发与 Web 生命周期——让每个并发任务持有自己的 Session
数据库·python
一水15 小时前
Redis实战:一个AI工作流系统里的五个应用场景,从传参到限流的完整链路
数据库·redis·wpf
Ai拆代码的曹操15 小时前
MySQL GROUP BY 性能优化:执行计划分析 + 索引重构实战
mysql·性能优化·重构