首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我尝试将已创建的数据库从主机mydb挂载到mysql容器中,这是我尝试过的:

问我尝试将已创建的数据库从主机mydb挂载到mysql容器中,这是我尝试过的:
EN

Stack Overflow用户
提问于 2019-07-26 09:19:43
回答 1查看 78关注 0票数 0

我尝试将已创建的数据库从主机mydb挂载到mysql容器中,这是我尝试过的:

运行-v mysql-data:/var/lib/mydb/-name mysql_web -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -d mysql:5.7

代码语言:javascript
复制
root@ip-172-31-16-134:/var/lib/mysql# sudo docker run -v mysql-data:/var/lib/mysql/mydb/ --name mysql_web -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -d mysql:5.7
3c0a8eb588c0dd0d0b7b72a727912744f44e744e700de7efc64a0c4c1f651685
root@ip-172-31-16-134:/var/lib/mysql# docker exec -it mysql_web bash
Error response from daemon: Container 3c0a8eb588c0dd0d0b7b72a727912744f44e744e700de7efc64a0c4c1f651685 is not running

但是,当我更改安装…的位置时,它会工作。

运行-v mysql-data:/var/lib/mydb/ -name mysql_web -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -d mysql:5.7

代码语言:javascript
复制
root@ip-172-31-16-134:/var/lib/mysql# sudo docker run -v mysql-data:/var/lib/mydb/ --name mysql_web -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -d mysql:5.7
06233eeb864c32ff16d6542e632a4da3ff6dfbd4a30fcc9aac8086dfc1245948
root@ip-172-31-16-134:/var/lib/mysql# docker exec -it mysql_web bash
root@06233eeb864c:/# cd /var/lib/mydb
root@06233eeb864c:/var/lib/mydb# exit
exit

似乎它不能挂载到特定的文件夹,我不知道为什么,我只是希望两个数据库,一个来自主机,另一个来自容器,同步自己,而不是加载dump.sql每次当我启动一个新的容器。

任何建议都会有帮助,谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-26 17:49:31

这是已知的问题,因为您得到了[ERROR] --initialize specified but the data directory has files in it. Aborting.错误

这里解释了这个错误意味着什么。

尝试一些类似的事情

  • 添加--ignore-db-dir=lost+found,如提到的这里。
  • 提供主机上数据目录的确切路径,并在/var/lib/mysql上挂载到容器路径,就像前面提到的docker run -v /path/to/mysql-data:/var/lib/mysql --name mysql_web -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -d mysql:5.7一样。

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57216901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档