zoukankan      html  css  js  c++  java
  • MongoDB的导入导出(7)

    导入/导出可以操作的是本地的mongodb服务器,也可以是远程的.

    所以,都有如下通用选项:

    -h host   主机

    --port port    端口

    -u username 用户名

    -p passwd   密码

    mongoexport 导出json格式的文件

    问: 导出哪个库,哪张表,哪几列,哪几行?

     -d  库名

    -c  表名

    -f  field1,field2...列名

    -q  查询条件

    -o  导出的文件名

    -- csv  导出csv格式(便于和传统数据库交换数据)

    例:

    [root@localhost mongodb]# ./bin/mongoexport -d test -c news -o test.json

    connected to: 127.0.0.1

    exported 3 records

    [root@localhost mongodb]# ls

    bin  dump  GNU-AGPL-3.0  README  test.json  THIRD-PARTY-NOTICES

    [root@localhost mongodb]# more test.json

    { "_id" : { "$oid" : "51fc59c9fecc28d8316cfc03" }, "title" : "aaaa" }

    { "_id" : { "$oid" : "51fcaa3c5eed52c903a91837" }, "title" : "today is sataday" }

    { "_id" : { "$oid" : "51fcaa445eed52c903a91838" }, "title" : "ok now" }

    例2: 只导出goods_id,goods_name列

    ./bin/mongoexport -d test -c goods -f goods_id,goods_name -o goods.json

    例3: 只导出价格低于1000元的行

    ./bin/mongoexport -d test -c goods -f goods_id,goods_name,shop_price -q ‘{shop_price:{$lt:200}}’ -o goods.json

    注: _id列总是导出

    mongoimport 导入

    -d 待导入的数据库

    -c 待导入的表(不存在会自己创建)

    --type  csv/json(默认)

    --file 备份文件路径

    例1: 导入json

    ./bin/mongoimport -d test -c goods --file ./goodsall.json

    例2: 导入csv

    ./bin/mongoimport -d test -c goods --type csv -f goods_id,goods_name --file ./goodsall.csv

    ./bin/mongoimport -d test -c goods --type csv --headline -f goods_id,goods_name --file ./goodsall.csv

    mongodump 导出二进制bson结构的数据及其索引信息

    -d  库名

    -c  表名

    -f  field1,field2...列名

    例:

    mongodump -d test  [-c 表名]  --out 导出路径

    规律:

    1:导出的文件放在以database命名的目录下

    2: 每个表导出2个文件,分别是bson结构的数据文件(比如:goods.bson), json的索引信息(比如:goods.metadata.json)

    3: 如果不声明表名, 导出所有的表

    例如:mongodump -d test --out C:UsersyuxlDesktopmongodbmongodmongodumptest

    mongorestore 导入二进制文件

    例:

     ./bin/mongorestore -d test --dir 路径

    例如:mongorestore -d test --dir C:UsersyuxlDesktopmongodbmongodumptest est

    二进制备份,不仅可以备份数据,还可以备份索引,

    备份数据比较小.

  • 相关阅读:
    bzoj 1017 魔兽地图DotR
    poj 1322 chocolate
    bzoj 1045 糖果传递
    poj 3067 japan
    timus 1109 Conference(二分图匹配)
    URAL 1205 By the Underground or by Foot?(SPFA)
    URAL 1242 Werewolf(DFS)
    timus 1033 Labyrinth(BFS)
    URAL 1208 Legendary Teams Contest(DFS)
    URAL 1930 Ivan's Car(BFS)
  • 原文地址:https://www.cnblogs.com/yxlblogs/p/4952057.html
Copyright © 2011-2022 走看看