MongoDB之資料匯出
阿新 • • 發佈:2019-01-31
今天要匯出伺服器上MongoDB的資料,期間遇到多個問題,因此記錄一下。
1. Auth Failed
使用圖形化工具能夠連線到遠端MongoDB,但是使用mongo命令連線不上。
錯誤資訊
出錯原因
遠端MongoDB是3.x,本地版本是2.x,版本太低,所以需要把本地MongoDB版本升級或者重灌3.x版本。
2. Authentication failed
錯誤資訊
出錯原因
MongoDB自3.x開始開啟了SCRAM-SHA-1認證,需要在命令中帶上--authenticationMechanism='SCRAM-SHA-1'
。
正確的匯出命令
./mongoexport --authenticationDatabase=db -h 127.0.0.1 --port 27017 -u admin -p 'admin' --authenticationMechanism='SCRAM-SHA-1' -d db -c Place -f ident -q '{published:true}' --type=csv -o ident.csv
其中某些引數含義:
authenticationDatabase
:資料庫名
authenticationMechanism
:使用SCRAM-SHA-1
認證
-c
:代表某個Collection名
-f
,
分割 -q
:代表過濾條件,是MongoDB的過濾語法
另附匯入命令
./mongoexport --authenticationDatabase=db -h 127.0.0.1 --port 27017 -u username -p password --authenticationMechanism='SCRAM-SHA-1' -d db -c CollectonName -o name.csv