Docker MongoDB 數據庫備份 並複製到宿主 恢復

1、從宿主鏈接到MongoDB容器

docker exec -it <你的MongodDB容器名> /bin/bash docker


2、使用mongodump命令進行數據庫備份

容器中執行

mongodump -h 127.0.0.1 --port 27017 -u=用戶名 -p=密碼 -d test -o /dump 數據庫

參數 做用
-h host
--port 端口
-d 指定數據庫
-o 指定備份到哪一個目錄,不指定應該是直接備份到根目錄的/dump文件夾
-u 用戶名
-p 密碼

系統備份成功會在/home/dump目錄下自動生成一個數據庫名的文件夾/test,裏面是所有Collection備份的bson文件。bash


3、打包備份文件夾

仍是容器中執行

tar -zcvf test.tar.gz /dump/testrest


4、從容器複製到宿主

Ctrl+D 或輸入 excit 切回到宿主機

docker cp <你的MongodDB容器名>:/dump/test.tar.gz /home code

解壓

tar -zxvf /home/test.tar.gz ci

解壓後,bson解壓到 /home/dump/test/

5、恢復

mongorestore -h <IP地址>:<端口> -d <數據庫名> /home/dump/test/ it

相關文章
相關標籤/搜索