今天删除数据库的时候出现了一个诡异的报错,报错如下所示

1
1010 - Error dropping database (can't rmdir './apolloportaldb', errno: 39)

网上查了一下,解决方案是直接去手动删除文件夹中的内容,我是 docker 启动的 mysql,在 docker 中,mysql 把自己的库文件都放在 /var/lib/mysql 目录下,按照查到的方法,我要删除的数据库就是这个目录下目录名为该数据库的文件夹。

如果删除文件夹中的内容,再去 mysql 里面通过命令删除数据库就可以删除了;如果在这里直接删除该文件夹,则去 mysql 里查看的时候,数据库直接消失。这里大胆猜测以下,mysql 应该将所有的数据库文件均放到了文件夹内,直接删除和在 mysql 内通过命令删除能够起到相同的效果。