Linux环境下dockes使用MongoDB,上传zip文件如何解压并备份恢复到MongoDB数据库中
1、准备 Docker 和 MongoDB 容器 建议主机端口改一下
(图片来源网络,侵删)
docker run --name mongodb -d -p 27018:27017 mongo
2. 创建一个工作目录并将 zip 文件上传到dockers容器中
docker cp data.zip mongodb:/data.zip
3. 在 MongoDB 容器中解压 zip 文件(也可以解压完再复制到容器里先步骤3再步骤2)
接下来,进入 MongoDB 容器的 shell 环境,并在其中解压 data.zip 文件。首先,使用以下命令进入容器的 shell:
docker exec -it mongodb bash
在容器内部,执行以下命令解压 data.zip 文件:
unzip /data.zip -d /data
假设 data.zip 包含的文件会被解压到 /data 目录下。
4. 使用 mongoimport 导入数据到 MongoDB
现在你可以使用 mongoimport 工具将解压后的数据导入到 MongoDB 中。在 MongoDB 容器内执行以下命令:
mongoimport --db your_database --collection your_collection --file /data/your_data_file.json --jsonArray
这里假设 your_data_file.json 是你解压后得到的 JSON 数据文件,your_database 是目标数据库的名称,your_collection 是目标集合的名称。根据实际情况调整这些参数。
5.使用mongorestore导入数据到 MongoDB(步骤四五根据自己需求来写)
在 MongoDB 容器内执行以下命令:
mongorestore --db flash-waimai /path/to/elm_backup/
总结区别
- 功能:mongorestore 用于整体数据库的备份恢复,而 mongoimport 则用于单独集合的数据导入。
- 操作对象:mongorestore 操作的是数据库级别的备份数据,而 mongoimport 操作的是文件中的数据记录。
- 数据结构:mongorestore 保留了备份时的数据库结构和索引,而 mongoimport 只是将数据导入到集合,不会保留任何数据库结构。
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!