在mysql服务器上的Windows上删除数据库(不能rmdir'。\ abm',错误号:41)时出错

时间:2015-03-29 02:32:49

标签: mysql

我有一个数据库,我想从服务器中删除,但当我想删除它时,我收到上述错误。

试图寻找解决方案,我发现有人在这个链接上回答问题Error in dropping a database in MySQL (can't rmdir '.\oro', errno: 41),但我看不到他们正在谈论的文件夹。我进入了C:\ Program Files \ MySQL \ MySQL Server 5.5 \ data文件夹,但是当我在文件夹C:\ Program Files \ MySQL \ MySQL中搜索时,我看不到具有我的数据库名称的文件夹服务器5.5 \

3 个答案:

答案 0 :(得分:23)

Windows错误41是"目录不为空。" https://msdn.microsoft.com/en-us/library/t3ayayh1.aspx

谨慎行事。您不希望MySQL的内部结构与磁盘上的内容不一致。

运行查询SELECT @@DATADIR;以查找应包含每个数据库的文件夹的目录,包括一个名为abm的文件夹。

与其他问题中提供的建议相反,一旦找到,请不要删除abm文件夹。相反,将文件夹留在那里,并将文件移到MySQL无法看到的数据库之外的某个地方。

然后再次尝试以正常方式删除数据库。

最后,通过查看日志中的错误,重新启动MySQL以确保其内部结构与磁盘文件一致。如果服务器重新启动且没有错误,并且不再列出数据库,则应该可以安全地删除您在上面复制的杂散文件。

答案 1 :(得分:3)

如果您是Windows用户。转到您的XAMPP目录 - > Mysql目录 - >数据 - >然后您将看到此文件夹中的数据库列表。只需将数据库剪切并粘贴到要删除的桌面上的某个位置即可。如果您使用phpmyadmin刷新页面。如果您没有发现任何错误。你很高兴。

答案 2 :(得分:1)

我得到同样的错误,做了两件事

  1. 我刚刚为当前用户提供了完全访问权限。
  2. 打开数据库文件夹,然后执行sql(drop database mydatabase)。
  3. 如果上述解决方案不适合您,则必须手动删除数据库文件夹。