zoukankan      html  css  js  c++  java
  • MongoDB导出-导入-迁移

    linux环境下,将mongodb迁移到同机器,不同端口上。

    命令参数:

    [mongodb@pera bin]$ ./mongodump --help
    Export MongoDB data to BSON files.

    options:
      --help                  produce help message
      -v [ --verbose ]        be more verbose (include multiple times for more 
                              verbosity e.g. -vvvvv)
      --version               print the program's version and exit
      -h [ --host ] arg       mongo host to connect to ( <set name>/s1,s2 for 
                              sets)
      --port arg              server port. Can also use --host hostname:port
      --ipv6                  enable IPv6 support (disabled by default)
      -u [ --username ] arg   username
      -p [ --password ] arg    password
      --dbpath arg            directly access mongod database files in the given 
                              path, instead of connecting toa mongod  server - 
                              needs to lock the datadirectory, so cannot be used 
                              if a mongod is currentlyaccessing the same path
      --directoryperdb        if dbpath specified, each db is in a separate 
                              directory
      --journal               enable journaling
      -d [ --db ] arg         database to use
      -c [ --collection ] arg  collectionto use (some commands)
      -o [ --out ] arg (=dump) output directoryor "-" for stdout
      -q [ --query ] arg      json query
      --oplog                 Use oplog for point-in-time snapshotting
      --repair                try to recover a crashed database
      --forceTableScan        force a table scan (do not use $snapshot)



    [mongodb@pera bin]$ ./mongorestore --help
    Import BSON files into MongoDB.


    usage: ./mongorestore [options] [directory or filenameto restore from]
    options:
      --help                 produce help message
      -v [ --verbose ]       be more verbose (include multiple times for more 
                             verbosity e.g. -vvvvv)
      --version              print the program's version and exit
      -h [ --host ] arg      mongo host to connect to ( <set name>/s1,s2 for sets)
      --port arg             server port. Can also use --host hostname:port
      --ipv6                 enable IPv6 support (disabled by default)
      -u [ --username ] arg   username
      -p [ --password ] arg   password
      --dbpath arg           directly access mongod database files in the given 
                             path, instead of connecting to amongod  server - 
                             needs to lock the data directory, socannot be used 
                             if a mongod is currently accessingthe same path
      --directoryperdb       if dbpath specified, each db is in a separate 
                             directory
      --journal              enable journaling
      -d [ --db ] arg        database to use
      -c [ --collection ] arg collection to use(some commands)
      --objcheck             validate object before inserting
      --filter arg           filter to apply before inserting
      --drop                 drop each collection before import
      --oplogReplay          replay oplog for point-in-time restore
      --oplogLimit arg       exclude oplog entries newer than provided timestamp 
                             (epoch[:ordinal])
      --keepIndexVersion     don't upgrade indexes to newest version
      --noOptionsRestore     don't restore collection options
      --noIndexRestore       don't restore indexes
      --w arg (=1)           minimum number of replicas per write



    主机信息:



    [root@pera ~]# more /etc/redhat-release 
    Red Hat Enterprise Linux Server release 5.6(Tikanga)
    [root@pera ~]# uname -a
    Linux pera 2.6.18-238.el5xen #1 SMP Sun Dec 1914:42:02 EST 2010 x86_64 x86_64 x86_64 GNU/Linux
    [root@pera ~]# more /proc/cpuinfo |grepmodel 
    model           : 15
    model name      : Intel(R)Pentium(R) Dual  CPU  E2180  @ 2.00GHz
    model           : 15
    model name      : Intel(R)Pentium(R) Dual  CPU  E2180  @ 2.00GHz
    [root@pera ~]# cat /proc/meminfo |grep Mem
    MemTotal:      1784832 kB
    MemFree:          5528kB
    [root@pera ~]# free
                total       used       free    shared    buffers     cached
    Mem:       1784832   1777060       7772          0       964    1600104
    -/+ buffers/cache:     175992   1608840
    Swap:      5144568    150492    4994076

    使用mongodump数据导出

    [root@pera bin]# su -mongodb

    [mongodb@pera bin]$ ./mongo
    MongoDB shell version: 2.2.2
    connecting to: test
    > show dbs
    admin   (empty)
    bamuta     19.9443359375GB
    local   6.2001953125GB



    [mongodb@pera bin]$ ./mongodump -d bamuta -o/home/mongodb/backupdmp/


    connected to: 127.0.0.1
    Mon Sep  9 13:53:53 DATABASE: bamuta       to     /home/mongodb/backupdmp/bamuta
    Mon Sep  9 13:53:53     bamuta.system.usersto /home/mongodb/backupdmp/bamuta/system.users.bson
    Mon Sep  9 13:53:53             1 objects
    Mon Sep  9 13:53:53     Metadatafor bamuta.system.users to /home/mongodb/backupdmp/bamuta/system.users.metadata.json
    Mon Sep  9 13:53:53     bamuta.DataInfoto /home/mongodb/backupdmp/bamuta/DataInfo.bson
    Mon Sep  9 13:53:56            64300/9301940   0%      (objects)
    Mon Sep  9 13:53:59            132100/9301940  1%      (objects)




    Mon Sep  9 14:07:19            9257300/9301940 99%     (objects)
    Mon Sep  9 14:07:22            9295600/9301940 99%     (objects)
    Mon Sep  9 14:07:22             9301940 objects
    Mon Sep  9 14:07:22     Metadatafor bamuta.DataInfo to /home/mongodb/backupdmp/bamuta/DataInfo.metadata.json


    查看备份的文件:
    [mongodb@pera bamuta]$ ls -sh
    5.3G DataInfo.bson  4.0KDataInfo.metadata.json  4.0K system.users.bson  4.0Ksystem.users.metadata.json



    在另1个端口导入。

    先在这个端口创建服务,用户

    ./mongod --port27019 --dbpath /home/mongodb/mongodbsoft/data27019 --logpath/home/mongodb/mongodbsoft/log27019/

    ./mongo --port27019 
    > use bamuta
    > db.addUser ("bamuta","bamuta");

    然后导入
    [mongodb@pera bin]$  ./mongorestore-d bamuta  --port 27019  /home/mongodb/backupdmp/bamuta


    connected to: 127.0.0.1:27019
    Tue Sep 10 13:46:21 /home/mongodb/backupdmp/bamuta/DataInfo.bson
    Tue Sep 10 13:46:21     going intonamespace [bamuta.DataInfo]
    Tue Sep 10 13:46:21 warning: Restoring to bamuta.DataInfowithout dropping. Restored data will be inserted without raising errors; checkyour server log
    Tue Sep 10 13:46:24            42747425/5670385368     0%      (bytes)
    Tue Sep 10 13:46:27            67203485/5670385368     1%      (bytes)
    Tue Sep 10 13:46:30            91269402/5670385368     1%      (bytes)
    Tue Sep 10 13:46:33            116882155/5670385368    2%      (bytes)
    Tue Sep 10 14:14:18            5659258036/5670385368   99%     (bytes)
    9301940 objects found
    Tue Sep 10 14:14:20     Creatingindex: { key: { _id: 1 }, ns: "bamuta.DataInfo", name:"_id_" }
    Tue Sep 10 15:00:55 warning: Restoring to bamuta.system.userswithout dropping. Restored data will be inserted without raising errors; checkyour server log
    1 objects found
    Tue Sep 10 15:00:55     Creatingindex: { key: { _id: 1 }, ns: "bamuta.system.users", name:"_id_" }


    检查结果

    > show dbs
    bamuta     13.947265625GB
    local   (empty)
    test    0.203125GB


    可参考的官方文档:

    http://docs.mongodb.org/manual/reference/program/mongodump/
    http://docs.mongodb.org/manual/reference/program/mongorestore/



  • 相关阅读:
    洛谷-P1496 火烧赤壁
    洛谷-P5638 【CSGRound2】光骓者的荣耀
    Java多线程实现
    linux安装mysql 8的完整过程
    tomcat安装
    C#之Null
    JToken
    初识算法之线性表---双向列表
    初识算法之线性表---链表定义/结构(2)
    初识算法之线性表---链表定义/结构(1)
  • 原文地址:https://www.cnblogs.com/james1207/p/3313226.html
Copyright © 2011-2022 走看看