热搜词
发表于 2024-1-25 09:35:31 | 显示全部楼层 |阅读模式
在linux宝塔面板中删除数据库时提示如下错误:
Schema directory './eteams/' does not exist
删除数据库.png

数据库有缓存文件,所以在Show Databases可以看到有nextcloud数据库,但是删除不显示不存在


问题描述:

宝塔面板启用回收站后,删除数据库未完全删除,点击“从服务器获取”按钮可以再次看到,不论是从phpMyAdmin还是宝塔面板都无法永久删除。

使用命令行登录数据库执行 drop database 命令报 linux  ERROR 3679 (HY000): Schema directory './xxx/' does not exist 错



问题原因:

/www/server/data 目录下对应的数据库文件夹被删除,导致删除数据库时MySQL找不到需要删除的数据库对应的文件夹,然后报错



解决办法:

先在 /www/server/data 中创建一个文件夹,文件夹名与需要删除的数据库名相同,然后再通过命令行登录mysql进行删除,即可成功删除。

点击复制代码运行代码编辑模式Bash
mysql -u root -p
# 然后输入密码,输入密码时没有回显,输入密码后回车

show database;
# 然后可以看到MySQL中所有数据库

drop database 数据库名;
# 然后数据库即可成功删除


备注:

/www/server/data 是linux下宝塔面板MySQL的数据库存储路径,如果是费宝塔面板请自行查找,解决思路同上



原因分析:

因为使用命令把“eteams”数据库给删了,但是呢,缓存又还在,所以重装时候报错了

解决办法:

cd /var/lib/mysql        #进入mysql文件夹
mkdir nextcloud                #把之前删除的nextcloud重新建起来,不需要里面有内容
mysql -u -p                        #进入mysql
mysql>drop database nextcloud;        #删除数据库

成功


全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-10-8 17:52 , Processed in 0.177638 second(s), 25 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team