MongoDB:数据导入CSV文件之错误记录

测试主机1:Windows 10,MongoDB 3.6.3,WPS 10.1,Notepad++ 7.5.3,

测试主机2:Ubuntu 16.04,MongoDB 4,

今天测试了将数据从文件——csv文件——导入到MongoDB数据库中,使用了它的mongoimport工具——Windows和Ubuntu上安装后都是有的。

Windows系统的mongoimport导入文件命令(先进入导入文件所在目录):

mongoimport -d databasename -c statis_data /u username /p password /authenticationDatabase:databasename /d databasename --file 20180818_cn_economy.csv --headerline --type csv

Ubuntu系统下的mongoimport导入文件命令(先进入导入文件所在目录):

mongoimport -d databasename -c statis_data -u username -p password --authenticationDatabase=databasename --file=20180818_cn_economy.csv --headerline --type csv

注意上面两条命令的紫色部分!!!

操作期间遇到两个问题:

1.CSV文件中存在中文,导入MongoDB后显示为乱码:

MongoDB:数据导入CSV文件之错误记录

MongoDB:数据导入CSV文件之错误记录

怎么解决呢?因为孤建立CSV文件用的是Excel,使用Notepad++打开CSV文件,将它的编码更改为UTF-8即可。

导入经过上面处理的CSV文件,中文显示为中文了。

2.Windows系统上的导入命令在更改用户认证信息后拷贝到Ubuntu上执行时出现下面的错误:

2018-08-18T17:49:30.960+0800 error validating settings: only one positional argument is allowed
2018-08-18T17:49:30.960+0800 try 'mongoimport --help' for more information

开始完全没有头绪,莽撞地 试着改改改,搜索网页,可是,stackflow.com上的一个网页的建议是给文件路径添加引号,试了,没用,继续各种折腾。

注意,上面第二条语句,试着使用mongoimport --help查看命令的帮助信息!运行命令,咦,怎么没有显示Windows下可以用的斜杠(/)开头的配置项呢?比如,/u, /p, /authenticationDatabase……

OK,按照help信息中的配置项更改导入命令,然后,好了,CSV文件中的数据成功导入到MongoDB数据库中!

下面是Windows 10、Ubuntu下的mongoimport --help命令的部分截图,存在很大差别:

MongoDB:数据导入CSV文件之错误记录

MongoDB:数据导入CSV文件之错误记录

参考链接:

MongoDB导入导出以及数据库备份 by 我是小昊

mongoexport导出csv中文乱码 by rena521

上一篇:“来用”Beta版使用说明


下一篇:gbs remotebuild使用说明