在 MySQL 中删除数据库时出错(不能 rmdir '.\oro',errno: 41)

Posted

技术标签:

【中文标题】在 MySQL 中删除数据库时出错(不能 rmdir \'.\\oro\',errno: 41)【英文标题】:Error in dropping a database in MySQL (can't rmdir '.\oro', errno: 41)在 MySQL 中删除数据库时出错(不能 rmdir '.\oro',errno: 41) 【发布时间】:2013-07-30 14:43:28 【问题描述】:

我无法从 mysql 中删除数据库。错误是这样的

ERROR 1010 (HY000): Error dropping database (can't rmdir '.\oro', errno: 41)

我尝试使用 phpmyadmin 删除数据库“oro”,它也显示相同的错误消息和警报

"DROP DATABASE" statements are disabled.

【问题讨论】:

请参考这个。***.com/questions/2046681/how-to-drop-database 您是否有权访问实际的数据库文件夹? 谢谢@KayNelson 我尝试访问数据库文件夹 C:\wamp\bin\mysql\mysql5.5.24\data 并删除了数据库文件夹“oro”。但这是正确的方法吗? 不正确的方法当然是使用语句drop。但是,如果你可以关闭mysql服务,然后将文件夹移动到另一个地方,然后重新启动mysql服务。如果它再次上线,您可以检查错误日志文件是否表明它缺少数据库。如果它不起作用,只需将其移回并重新启动服务。 你看这个问题了吗? ***.com/questions/4410630/… 【参考方案1】:
    转到

    C:\wampXY\bin\mysql\mysqlx.y.z\data

(XY..参考版本)

    将要删除的文件重命名为其他任何名称。(仅在特殊情况下可选)

    现在只需删除重命名的文件。

【讨论】:

【参考方案2】:

如果您使用 XAMPP,请转到 C:/xampp/mysql/data/YourDBFolder

删除该文件夹后,一切都会好起来的。

【讨论】:

【参考方案3】:

我意识到我真的迟到了,但是当我遇到这个问题时(并最终来到这里),我导航到目录,实际上发现一个文件通过 INTO OUTFILE 无意中在目录中创建了一个没有路径的文件,我忘记了。 MySQL 似乎有问题,因为它没有创建文件,因此无法删除有问题的目录。

【讨论】:

【参考方案4】:

Mysql为任意表生成两个文件

    .frm .ibd

在您的目录中检查这两个文件是否必须存在,如果缺少任何一个,则删除剩余的一个,或者如果您希望可以删除所有文件,但要小心,我会从表中删除所有数据。

这对我有用,我希望它也对你有用。

【讨论】:

【参考方案5】:

就我而言,我通过导航到文件夹解决了问题:

C:\wamp\bin\mysql\mysql5.6.12\data

并删除我试图删除的数据库文件夹。就是这样。

【讨论】:

删除数据文件夹内的db文件夹是正确的解决方案。从备份文件中恢复,您就可以重新开始工作了。 如果是linux呢?【参考方案6】:

尝试更改 phpmyadmin 配置文件中的值,

$cfg['AllowUserDropDatabase']   = TRUE;

【讨论】:

【参考方案7】:

出现你得到的 ERROR 1010 当你创建一个数据库时,会为你创建一个文件。这意味着“创建数据库 foo”将在您的数据目录中创建一个目录 foo。 foo 的所有表定义/数据都在 foo 目录中。所有这些表都是在服务器中创建的,它们对应的文件是由服务器创建的。如果由于某种原因,在这个目录中创建或放置了一个不是 MySQL 生成的文件,那么当你删除 foo 时,服务器将发出错误 1010。

如果您尝试使用 phpmyadmin 删除数据库,请参阅 phpmyadmin enable drop database statement。

希望这可以帮助您理解错误。

【讨论】:

谢谢@Himanil 您提到可以在数据库目录中找到不是由 MySQL 生成的不需要的文件。那些不需要的文件是哪些? .empty 文件是这样的吗?

以上是关于在 MySQL 中删除数据库时出错(不能 rmdir '.\oro',errno: 41)的主要内容,如果未能解决你的问题,请参考以下文章

在 SQL 中删除数据库时出错(不能 rmdir './tract',errno: 66)

windows xp下的MySQL出错

删除数据库时出错(不能 rmdir './someDB/', errno: 17)

mysql出错的代码解析及解答

MYSQL 08S01错误怎么解决

MySQL:删除数据库时出错(errno 13;errno 17;errno 39)