mongodb 导入 csv 文件

本贴最后更新于 569 天前,其中的信息可能已经时移俗易

参考链接:
https://blog.csdn.net/u012318074/article/details/77713228
https://docs.mongodb.com/manual/reference/program/mongoimport/

一、方法一

下面命令会自动创建数据库和表:
mongoimport --db foo --collection user_metainfo --type csv --headerline --ignoreBlanks --file /root/yss_user_data_100.csv

根据以上参考命令,得到:
mongoimport --host 127.0.0.1 --port 18081 --username admin --password "foo@169.com&" --authenticationDatabase admin \
  --db foo --collection account_metainfo --type csv --headerline --ignoreBlanks --file /data/solution/mongodb3.6/yss_import_userinfo_data/yss_user_data.csv
  
--authenticationDatabase=<dbname>
Specifies the authentication database where the specified --username has been created

检查命令:  
db.auth("admin","foo@169.com&")
use foo
db.account_metainfo.find()
db.account_metainfo.count()
 


参考操作命令:
db.help();                 #显示数据库操作命令,里面有很多的命令 
db.foo.help();             #显示集合操作命令,同样有很多的命令,foo指的是当前数据库下,一个叫foo的集合,并非真正意义上的命令 
db.foo.find();             #对于当前数据库中的foo集合进行数据查找(由于没有条件,会列出所有数据) 
db.foo.find( { a : 1 } );  #对于当前数据库中的foo集合进行查找,条件是数据中有一个属性叫a,且a的值为1
db.foo.count()                统计表的行数    
db.foo.dataSize()        统计表数据的大小    
db.foo.distinct( key ) - eg. db.foo.distinct( 'x' )                按照给定的条件除重    
db.foo.drop() drop the collection 删除表    
db.foo.dropIndex(name)  删除指定索引    
db.foo.dropIndexes() 删除所有索引  

db.stats()
db.foo.help()
db.user_metainfo.help()
db.user_metainfo.find();



2.方法二

转编码:
iconv -f gbk -t utf-8 -c yss20191015.csv > yss20191015-utf8.csv
转换换行符:
dos2unix yss20191015-utf8.csv~~~~

导入:
mongoimport --host 127.0.0.1 --port 18081 --username admin --password "Tyrz@169.com&" --authenticationDatabase admin   --db tyrz --collection account_metainfo --type csv  --ignoreBlanks --columnsHaveTypes --fields "UNIQUEID.string(),USER_NAME.string(),USER_PHONE.string(),USER_ID_TYPE.string(),USER_IDCARD_NUM.string(),CREATE_TIME.date_oracle(YYYY/MM/DD HH24:MI:SS),POLI_DATASHARE_FLAG.string()" --parseGrace  skipField --file /data/solution/mongodb3.6/yss_import_userinfo_data/yss_user_data-utf8.csv

mongoimport --host 127.0.0.1 --port 18081 --username admin --password "Tyrz@169.com&" --authenticationDatabase admin \
  --db tyrz --collection account_cainfo2 --type csv  --ignoreBlanks --columnsHaveTypes \
  --fields "UNIQUEID.string(),USER_NAME.string(),USER_PHONE.string(),USER_ID_TYPE.string(),USER_IDCARD_NUM.string(),CREATE_TIME.date_oracle(YYYY/MM/DD HH24:MI:SS),POLI_DATASHARE_FLAG.string()" \
  --parseGrace  skipField --file /data/solution/mongodb3.6/yss_import_userinfo_data/yss20191015-utf8.csv
  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    82 引用 • 53 回帖 • 1 关注

广告 我要投放

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...