我正在使用两个容器:server(php + apache)和mysql(image)。 我正在使用最新的docker版本和OSX El Capitan。
这是我的docker-compose.yml:
server:
build: docker/images/server
ports:
- "80:80"
- "443:443"
volumes:
- .:/var/www/html
links:
- mysql
tty: true
mysql:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: user
MYSQL_DATABASE: test
volumes:
- "./.data/db:/var/lib/mysql"
当我导入我的mysql转储时,15-20分钟后进程阻塞。我用这个命令来显示一个进程条:
pv database_dump.sql | mysql -uroot -proot test
database_dump.sql大约是3.5GB。
在开始导入我的转储之前,我是否需要做一些额外的步骤?
谢谢!
解决方案
最后,我不得不用Ubuntu 14.04和MySQL创建一个新的容器。我不知道为什么,当我试图导入我的数据库时,官方的MySQL容器不起作用。
答案 0 :(得分:0)
最简单的方法是使用MySQL Workbench并连接到您的数据库URI并导入转储
答案 1 :(得分:0)
尝试使用
导入cat backup.sql | docker exec -i CONTAINER /usr/bin/mysql -u root --password=root DATABASE
答案 2 :(得分:-1)
首先,创建一个数据库; 然后运行命令:
$ pv data_file.sql | docker exec -i 容器名称 mysql -uUSER -pPASSWORD 数据库名称