首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >‘`docker exec -i db_mysql mysqldump`’不产生任何备份

‘`docker exec -i db_mysql mysqldump`’不产生任何备份
EN

Stack Overflow用户
提问于 2022-07-03 16:35:14
回答 1查看 149关注 0票数 -1

我有一个MySQL Docker容器(db_mysql),它带有数据库wp_almond

当我尝试用docker exec -i db_mysql mysqldump转储它时,它不起作用

代码语言:javascript
复制
$ docker exec -i db_mysql mysqldump -u root -p wp_almond > wp_almond.sql
$ docker exec -i db_mysql ls # Notice that "wp_almond.sql" was not created
bin
boot
dev
docker-entrypoint-initdb.d
entrypoint.sh
etc
home
lib
lib64
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var

但进入容器,然后在内部执行mysqldump工作

代码语言:javascript
复制
$ docker exec -it db_mysql sh
$ mysqldump -u root -p wp_almond > wp_almond.sql
$ ls # Here "wp_almond.sql" is present
bin
boot
dev
docker-entrypoint-initdb.d
entrypoint.sh
etc
home
lib
lib64
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
wp_almond.sql

我不知道为什么,我需要在没有输入带有sh的容器的情况下进行备份脚本

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-06 00:35:38

当你跑的时候

docker exec -i db_mysql mysqldump -u root -p wp_almond

然后输出输出到(主机终端的)标准输出。

因此,当你跑

docker exec -i db_mysql mysqldump -u root -p wp_almond > wp_almond.sql

它只需将终端的输出重定向到主机上。

如果要将其保存在容器中,请尝试以下操作

docker exec -i db_mysql sh -c "mysqldump -u root -p wp_almond > wp_almond.sql"

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

https://stackoverflow.com/questions/72848230

复制
相关文章

相似问题

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