Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法删除mysql数据库、表,甚至无法在docker中更改表_Mysql_Docker - Fatal编程技术网

无法删除mysql数据库、表,甚至无法在docker中更改表

无法删除mysql数据库、表,甚至无法在docker中更改表,mysql,docker,Mysql,Docker,我想要一个mysql数据库和一些基本的数据集。 我使用此Dockerfile创建了mysql docker映像,但删除了VOLUME[/var/lib/mysql,/var/log/mysql]行,因此Dockerfile如下所示: FROM ubuntu:12.10 MAINTAINER Brandon Rice <brice84@gmail.com> RUN dpkg-divert --local --rename --add /sbin/initctl RUN ln -s /b

我想要一个mysql数据库和一些基本的数据集。 我使用此Dockerfile创建了mysql docker映像,但删除了VOLUME[/var/lib/mysql,/var/log/mysql]行,因此Dockerfile如下所示:

FROM ubuntu:12.10
MAINTAINER Brandon Rice <brice84@gmail.com>
RUN dpkg-divert --local --rename --add /sbin/initctl
RUN ln -s /bin/true /sbin/initctl
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get -y install mysql-server
RUN sed -i -e"s/^bind-address\s*=\s*127.0.0.1/bind-address = 0.0.0.0/" /etc/mysql/my.cnf
RUN /usr/bin/mysqld_safe & \
    sleep 10s && \
    mysql < create_my_db.sql && \
    mysql -e "GRANT ALL ON *.* to 'root'@'%'; FLUSH PRIVILEGES" 

EXPOSE 3306
CMD ["mysqld_safe"]
添加数据时一切正常,但如果要删除数据库,例如:

FROM my_db_mysql
RUN /usr/bin/mysqld_safe & \
    sleep 10s && \
    mysql -e "DROP DATABASE my_db;" 
EXPOSE 3306
CMD ["mysqld_safe"]
我得到下一个错误:

ERROR 6 (HY000) at line 1: Error on delete of './my_db//db.opt' (Errcode: 1)
它不仅在我想要构建映像时出现,甚至在我执行以下命令时也会出现:mysql-u user-p-e DROP DATABASE my_db; 如何解决这个问题? 谢谢

更新:我还尝试使用不同的文件系统运行docker,例如-s vfs或-s devicemapper,但没有任何更改。 当我使用卷[/var/lib/mysql,/var/log/mysql]构建映像时,一切都正常工作,但我无法提交这些更改。
更新:看来我解决了这个问题。问题出在ubuntu 12.04的主机上。当我将ubuntu更新到13.10时,这个问题消失了。非常感谢

您能否指出是否可以成功地从该数据库中选择?它是否与SHOW数据库一起出现?/var/lib/mysql的内容是什么?@jpetazzo您能否指出您是否可以成功地从该数据库中进行选择对它是否与SHOW DATABASES一起出现?-SHOW数据库工作正常。下一步-您认为您可以提供一个最小的create_my_db.sql文件,以便我们可以在本地完全重现问题吗?非常感谢。
ERROR 6 (HY000) at line 1: Error on delete of './my_db//db.opt' (Errcode: 1)