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后显示为乱码:
怎么解决呢?因为孤建立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命令的部分截图,存在很大差别:
参考链接:
mongoexport导出csv中文乱码 by rena521