发表于 2015-7-9 11:13:23

Mongodb导入导出

1,-F 写所有导出字段
mongoexport -u root -p root -d test -c capped -f test,test1,test2,test3 --csv -o user.csv

2,--fieldFile通过文本文档写导出字段(每行一个字段)
mongoexport -u root -p root -d test -c capped --fieldFile fields.txt --csv -o user.csv


1. 在mongodb安装目录的bin目录下有一个数据导出工具:mongoexport.exe,我们可以打开一个命令窗口,切换到该目录下并执行mongoexport,就可以看到使用该工具的很多参数说明。      假设mongodb的安装目录为D:\program\mongodb,那么可以通过以下方式了解导出工具的使用:
  >d:
  >D:\program\mongodb\bin
  >mongoexport
  --help                  produce help message
-v [ --verbose ]          be more verbose (include multiple time
                            verbosity e.g. -vvvvv)
--version               print the program's version and exit
  ........
  
  2. 常用数据导出方式
  首先,在MongoDB中新增一个localdb,以及创建集合user并插入一些对象。
  >use localdb
  >db.user.insert({"name" : "ming", "age" : 2 })
  >db.user.insert({"name" : "lisi", "age" : 20 })
  
  那么,接下来就可以使用以下方式导出user表中的数据。其中,-d代表指明从哪个数据库中导出数据;-c代表从哪个集合中导出数据;-o指明导出的数据输出到哪个文件中。
  >mongoexport -d localdb -c user -o user.dat
  
  导出成功后,打开user.dat文件,导出的数据如下所示:
  { "_id" : { "$oid" : "4eed9f9ca939118694cf05e4" }, "name" : "ming", "age" : 2 }
{ "_id" : { "$oid" : "4ef1f3cf3bd18218e6bdfa31" }, "name" : "lisi", "age" : "20" }
  
  3. 导出为CVS文件
  如果要导出集合中指定字段的数据存到CVS文件中,可以使用如下命令:
  >mongoexport -d localdb -c user -f _id,name --csv -o user.csv
  导出的user.cvs文件的内容如下:
  { "_id" : { "$oid" : "4eed9f9ca939118694cf05e4" }, "name" : "ming" }
{ "_id" : { "$oid" : "4ef1f3cf3bd18218e6bdfa31" }, "name" : "lisi" }
  
  4. mongoexport参数列表
  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 ( /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 a mongodserver -
                                       needs to lock the data directory, so cannot be used
                                       if a mongod is currently accessing 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   collection to use (some commands)
   -f [ --fields ] arg       comma separated list of field names e.g. -f name,age
   --fieldFile arg         file with fields names - 1 per line
   -q [ --query ] arg   query filter, as a JSON string
   --csv                        export to csv instead of json
   -o [ --out ] arg         output file; if not specified, stdout is used
   --jsonArray            output to a json array rather than one object per line
   -k [ --slaveOk ] arg (=1) use secondaries for export if available, default true
页: [1]
查看完整版本: Mongodb导入导出