美文网首页我爱编程
迁移mongodb数据

迁移mongodb数据

作者: IfZhou | 来源:发表于2017-12-25 21:33 被阅读0次

    [TOC]

    迁移mongodb数据

    1. 新机器安装mongodb

    1.1 下载和安装

    方式一,直接下载包,解压

    缺点,更改相关配置,找不到配置文件,只能在命令行中带入参数

    curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz    # 下载
    tar -zxvf mongodb-linux-x86_64-3.0.6.tgz                                   # 解压
    
    mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb                         # 将解压包拷贝到指定目录
    
    
    

    方式二,yum安装

    参考官方文档:

    https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/

    创建/etc/yum.repos.d/mongodb-org-3.4.repo 文件

    [mongodb-org-3.4]
    name=MongoDB Repository
    baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
    gpgcheck=1
    enabled=1
    gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
    

    最后执行:

    sudo yum install -y mongodb-org
    

    1.2 查看/更改数据目录和日志目录

    默认为 /data/db

    通过第一步的方法二安装的数据库配置文件为:/etc/mongod.conf

    systemLog:
      destination: file    
      logAppend: true  
      path: /var/log/mongodb/mongod.log  #日志路径
      
    # Where and how to store data.
    storage:
      dbPath: /var/lib/mongo  #数据路径
    

    更改上述两个变量即可修改数据目录和日志目录

    Mongodb后台运行

    mongod --fork --logpath=/data/dblog/mongodb2.log --logappend

    1.3 启动方式

    之前一直有疑惑,直接使用官网指南启动,一直不会按照mongodb的配置文件去启动,会报没有数据保存路径的错误。

    sudo service mongod restart
    

    后来使用如下命令,并在后面带各种参数,没有问题,但是没根据配置文件启动仍不满意。

    mongod  --dbPath=...
    

    后来查了一下,最终这样启动才是没问题的:

    mongod --config /etc/mongod.conf
    

    1.4 一个注意点

    在为mongodb配置远程连接时,配置文件的bindIp是指绑定到本机的哪个IP,而不是只可以允许哪个IP来连接

    同时注意,如果像我一样使用的是云服务,想要绑定到外网IP,会报错误48。经查,需要修改为内网IP。原因大概是IP NAT ,外网映射至内网

    net:
      port: 27017
      bindIp: 127.0.0.1,172.19.239.111
    

    2. 数据导出

    使用的是mongodump导出

    3. 数据导入

    mongorestore -d 你的数据库名称 要导入的数据文件夹
    

    相关文章

      网友评论

        本文标题:迁移mongodb数据

        本文链接:https://www.haomeiwen.com/subject/hfyrgxtx.html