docker挂载windows下的目录为mysql数据目录,导入数据到数据库超慢是为何?

我的镜像是在linux下通过dockerfile创建的,容器内是linux系统,里面安装了mysql8.0服务,docker-compose.yml 文件挂载目录代码片段如下:

    volumes: #映射宿主机和容器目录,数据是永久保存的
      #配置文件目录,宿主机目录:容器目录
      - ./mysqlData:/var/lib/mysql #注意:宿主机上这个 mysqlData 目录要设置为 rwxrwxrwx
     #日志目录
      - ./tmp:/tmp #注意:宿主机上这个 tmp 目录要设置为 rwxrwxrwx

现在环境运行是没有问题的,我的操作过程是(宿主机是 windows 10 系统):

1.通过 navicat 将远程环境的数据导出成.sql文件,21 MB,然后将该文件拷贝到 ./tmp(windows的目录) 这个目录
2.再在容器内通过命令 mysql -u root -p xxx</tmp/xxx.sql 导入到库

结果是数据能够导入,但是巨慢,21MB 导了快 1 个 hour,请高手指点一下,这是为什么以及如何解决这个问题呢?小弟感激不尽!

阅读 1.9k
1 个回答

可能是容器对宿主机目录操作的io很慢,可以测试下。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题