測試主機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