备份
备份MongoDB有多种方法,其中比较简单的就是使用mongodump
。
docker exec -i <IMAGE_NAME> mongodump -d <DATABASE> --archive > ./mongo/collections.archive
- 以上命令会将
<IMAGE_NAME>
容器中的<DATABASE>
数据库dump到host机器的collections.archive
文件中。 --archive
会dump所有collection
到一个文件。mongodump
命令不提供目标路径的话会将dump结果输出到标准输出,这里使用>
重定向输出到host的文件。
还原
这里使用host机器上的collections.archive
文件进行还原。
docker exec -i <IMAGE_NAME> mongorestore --archive < ./mongo/collections.archive
--archive
模式导出的备份文件还原时必须也要加上--archive
mongorestore
命令不提供源路径的话会使用标准输入,这里使用<
重定向host的文件作为mongorestore
的输入。