Docker Mongodb导出&导入

结构导出数据(容器1)数据移动【宿主机中操作】导入数据(容器2)

结构

【宿主机】 - 【mongo1】 Mongodb Docker容器1 - 【mongo2】 Mongodb Docker容器2

#mermaid-svg-i4xMsbaBaMuYNPWC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC .error-icon{fill:#552222;}#mermaid-svg-i4xMsbaBaMuYNPWC .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-i4xMsbaBaMuYNPWC .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-i4xMsbaBaMuYNPWC .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-i4xMsbaBaMuYNPWC .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-i4xMsbaBaMuYNPWC .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-i4xMsbaBaMuYNPWC .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-i4xMsbaBaMuYNPWC .marker{fill:#333333;stroke:#333333;}#mermaid-svg-i4xMsbaBaMuYNPWC .marker.cross{stroke:#333333;}#mermaid-svg-i4xMsbaBaMuYNPWC svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-i4xMsbaBaMuYNPWC .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC .cluster-label text{fill:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC .cluster-label span{color:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC .label text,#mermaid-svg-i4xMsbaBaMuYNPWC span{fill:#333;color:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC .node rect,#mermaid-svg-i4xMsbaBaMuYNPWC .node circle,#mermaid-svg-i4xMsbaBaMuYNPWC .node ellipse,#mermaid-svg-i4xMsbaBaMuYNPWC .node polygon,#mermaid-svg-i4xMsbaBaMuYNPWC .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-i4xMsbaBaMuYNPWC .node .label{text-align:center;}#mermaid-svg-i4xMsbaBaMuYNPWC .node.clickable{cursor:pointer;}#mermaid-svg-i4xMsbaBaMuYNPWC .arrowheadPath{fill:#333333;}#mermaid-svg-i4xMsbaBaMuYNPWC .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-i4xMsbaBaMuYNPWC .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-i4xMsbaBaMuYNPWC .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-i4xMsbaBaMuYNPWC .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-i4xMsbaBaMuYNPWC .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-i4xMsbaBaMuYNPWC .cluster text{fill:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC .cluster span{color:#333;}#mermaid-svg-i4xMsbaBaMuYNPWC div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-i4xMsbaBaMuYNPWC :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

链接

链接

链接

链接

容器1

宿主机

容器2

#mermaid-svg-zBe0BgSF47PxPfzg {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-zBe0BgSF47PxPfzg .error-icon{fill:#552222;}#mermaid-svg-zBe0BgSF47PxPfzg .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-zBe0BgSF47PxPfzg .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-zBe0BgSF47PxPfzg .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-zBe0BgSF47PxPfzg .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-zBe0BgSF47PxPfzg .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-zBe0BgSF47PxPfzg .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-zBe0BgSF47PxPfzg .marker{fill:#333333;stroke:#333333;}#mermaid-svg-zBe0BgSF47PxPfzg .marker.cross{stroke:#333333;}#mermaid-svg-zBe0BgSF47PxPfzg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-zBe0BgSF47PxPfzg .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-zBe0BgSF47PxPfzg text.actor>tspan{fill:black;stroke:none;}#mermaid-svg-zBe0BgSF47PxPfzg .actor-line{stroke:grey;}#mermaid-svg-zBe0BgSF47PxPfzg .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-zBe0BgSF47PxPfzg .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-zBe0BgSF47PxPfzg #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-zBe0BgSF47PxPfzg .sequenceNumber{fill:white;}#mermaid-svg-zBe0BgSF47PxPfzg #sequencenumber{fill:#333;}#mermaid-svg-zBe0BgSF47PxPfzg #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-zBe0BgSF47PxPfzg .messageText{fill:#333;stroke:#333;}#mermaid-svg-zBe0BgSF47PxPfzg .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-zBe0BgSF47PxPfzg .labelText,#mermaid-svg-zBe0BgSF47PxPfzg .labelText>tspan{fill:black;stroke:none;}#mermaid-svg-zBe0BgSF47PxPfzg .loopText,#mermaid-svg-zBe0BgSF47PxPfzg .loopText>tspan{fill:black;stroke:none;}#mermaid-svg-zBe0BgSF47PxPfzg .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-zBe0BgSF47PxPfzg .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-zBe0BgSF47PxPfzg .noteText,#mermaid-svg-zBe0BgSF47PxPfzg .noteText>tspan{fill:black;stroke:none;}#mermaid-svg-zBe0BgSF47PxPfzg .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-zBe0BgSF47PxPfzg .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-zBe0BgSF47PxPfzg .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-zBe0BgSF47PxPfzg .actorPopupMenu{position:absolute;}#mermaid-svg-zBe0BgSF47PxPfzg .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#mermaid-svg-zBe0BgSF47PxPfzg .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-zBe0BgSF47PxPfzg .actor-man circle,#mermaid-svg-zBe0BgSF47PxPfzg line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-zBe0BgSF47PxPfzg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

容器1

宿主机

容器2

数据备份到【宿主机】

【宿主机】中备份数据再导入到【容器2】中

容器1

宿主机

容器2

导出数据(容器1)

# 1. 进入容器

docker exec -it 《容器1名称或ID》 /bin/bash

# 2. 进入数据查看需要导出的库(知道导出的数据库名可以跳过)

mongo localhost:27017

# 3. 导出数据库

# -h:主机地址 --port:端口号 -d:需要导出的数据库名称 -o:导出文件保存地址

mongodump -h 127.0.0.1 --port 27017 -d yapi -o /backup/mongodb

# 4.导出的数据库打包(tar -zcvf 《文件名》.tar.gz 《打包文件路径》)

tar -zcvf yapi.tar.gz /backup/mongdb

# 5.退出容器1

exit

数据移动【宿主机中操作】

# 1. 【容器1】中的数据库备份复制到【宿主机】/backup/mongodb

docker cp <容器1>:/backup/mongodb/yapi.tar.gz /backup/mongodb

# 2.【宿主机】/backup/mongodb 中数据库备份移到【容器2】/backup/mongodb

docker cp /backup/mongodb/yapi.tar.gz <容器2>:/backup/mongodb

导入数据(容器2)

# 1. 进入容器2

docker exec -it <容器2名称或ID> /bin/bash

# 2.解压到当前目录

tar -zxvf /backup/mongodb/yapi.tar.gz

# 3.导入到数据库

# 数据库账号【yapi】 & 密码【yapi】,避免导入失败

mongorestore -h 127.0.0.1 -u yapi -p=yapi -d 《导入的数据库名》 《导入的数据库位置》/yapi

相关链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: