场景:服务器要升级,之前在linux部署的mongodb没有用docker,升级后,mongodb要用docker部署,并将原有的mongodb数据导入到docker部署的mongodb中。

1.在linux安装的mongodb文件下导出mongodb数据

./bin/mongodump -h ip:port  -d 数据库名 -o  linux环境下指定的文件夹 //如有用户名,则加上 --username xxx --password xxx

2.安装docker :docker run -p 27018(容器外部访问的端口):27017 -v $PWD/db:/data/db -d  --name mymongo mongo  --smallfiles

--auth ,开启账户验证

设置密码

docker exec -it <docker_mongodb_name> mongo bash

user test

db.createUser( {

user: "root",
 pwd: "root",

roles: [ { role: "userAdminAnyDatabase", db: "test" } ]})

也可以:-e MONGO_INITDB_ROOT_USERNAME=mongoadmin -e MONGO_INITDB_ROOT_PASSWORD=secret

参考文档:https://docs.docker.com/samples/library/mongo/#mongo_initdb_root_username-mongo_initdb_root_password

3.进入docker mongodb容器:docker exec -it mymongo /bin/sh

在docker容器新建mongodb数据要导入的目录,mkdir -p /opt/mongodbBack/

4.退出docker mongodb容器,进入真机linux

docker cp linux备份mongodb的数据文件(不是文件夹)  mymongo(容器名称或id):/opt/mongodbBack/

docker exec -it mymongo bash

执行: mongorestore -h localhost:27017 -d pac(数据库名字,可以随便写,存在不存在都可以) --dir /opt/mongoData/

至此,已完成docker mongodb的数据导入linux的mongodb数据

5.将docker mongodb的数据导出到真机中

docker exec -it mymongo /bin/bash

mongodump -h 127.0.0.1 --port 27017 -d test -o /test/mongodBack     //在容器内部,导出数据到容器内部的指定文件夹

退出docker mongodb容器:docker cp <mongodb容器名>:/test/mongodBack/    /home/opt/mongodbData/(此为真机目录)

docker备份mongodb数据,导入导出的更多相关文章

  1. python 全栈开发,Day126(创业故事,软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON)

    作业讲解 下载代码: HBuilder APP和flask后端登录 链接:https://pan.baidu.com/s/1eBwd1sVXTNLdHwKRM2-ytg 密码:4pcw 如何打开APP ...

  2. 软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON

    全局变量 由于多个html页面,需要引用同一个变量.这个时候,需要定义一个全局变量!如何定义呢? 默认包含了mui的html文件都导入mui.js文件.那么将变量写在mui.js中,就可以实现所有页面 ...

  3. mongodb数据导入导出以及备份恢复

    昨日在公司收到游戏方发来一个1G多的数据文件,要求导入联运账号中.细细一看,纳尼!文件竟然是BSON格式. 哇塞,这不是去年给大家分享的NoSql中的MongoDB的备份文件吗? 于是搭好环境 1.启 ...

  4. mongodb备份恢复,数据导入导出

    数据导出 mongoexport 假设库里有一张apachelog表,里面有2 条记录,我们要将它导出 /test/mongodb/bin/mongo use wxdata switched to d ...

  5. MySQL5.7.18 备份、Mysqldump,mysqlpump,xtrabackup,innobackupex 全量,增量备份,数据导入导出

    粗略介绍冷备,热备,温暖,及Mysqldump,mysqlpump,xtrabackup,innobackupex 全量,增量备份 --备份的目的 灾难恢复:意外情况下(如服务器宕机.磁盘损坏等)对损 ...

  6. 2.0(3)MongoDB数据导入导出

    ——————(1)数据导出———————— 导出为JSON格式 mongoexport -d '数据库' -c '表名' -o ***.json 导出为csv mongoexport -d '数据库' ...

  7. mongodb数据导入导出mongoexport/mongoimport

    数据导出 mongoexport 假设库里有一张user表,里面有2条记录,我们要将它导出 > use my_mongodb switched to db my_mongodb > db. ...

  8. mongodb 数据导入导出

    mongoexport 命令异常方便简单强大! 连接数据库: jkmiao@jkmiao-ipin:~$ mongo 192.168.1.xx:xxx/jd_58tc_raw 1.  导出10条数据到 ...

  9. MongoDB数据导入导出成csv或者json

    1. 从远程数据表拉取数据到本地json文件 mongoexport --host 远程服务器IP --port 远程服务器端口 --username 远程数据库用户名 --password 远程数据 ...

随机推荐

  1. Spring mvc 整合PageHelper

    Integer page=queryBean.getPage(); Integer pageSize=queryBean.getPageSize(); response.setContentType( ...

  2. jquery cookie问题

    近期工作中遇到了jquery cookie解决问题,顺便记录下: <div id="submenu"> <ul> <li><a id=&q ...

  3. (二分查找 结构体) leetcode33. Search in Rotated Sorted Array

    Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...

  4. GO语言系列(五)- 结构体和接口

    结构体(Struct) Go中struct的特点 1. 用来自定义复杂数据结构 2. struct里面可以包含多个字段(属性) 3. struct类型可以定义方法,注意和函数的区分 4. struct ...

  5. GIT-常规操作

    本地安装git, 安装文件: Git客户端: 可百度搜索:GIT64位或GIT32位等关键字找到相应的版本进行下载. 本地地址:D:\20-git\Git-2.20.1-64-bit.exe 也可百度 ...

  6. java 中使用正则表达式操作字符串

    import java.awt.Toolkit; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.DataFl ...

  7. 中间件方法必须返回Response对象实例(tp5.1+小程序结合时候出的问题)

    前言:在最近开发小程序通过中间件检查是否携带token时候报的一个错误 解决方法: 根据手册中需要return出去才可以不报错

  8. Linux文件权限命令及配置

    http://www.cnblogs.com/CgenJ/archive/2011/07/28/2119454.html

  9. MYSQL(三)

    转载自https://www.cnblogs.com/wupeiqi/articles/5716963.html 1.索引 索引是表的目录,在查找内容之前可以先在目录中查找索引位置,以此快速定位查询数 ...

  10. ASP.NET Web API系列教程(目录)(转)

    注:微软随ASP.NET MVC 4一起还发布了一个框架,叫做ASP.NET Web API.这是一个用来在.NET平台上建立HTTP服务的Web API框架,是微软的又一项令人振奋的技术.目前,国内 ...