使用mongoexport
命令,將乙個collection匯出為json格式或csv格式的檔案。
從mongodb4.2開始,mongoexport
就不再隨著mongodb一起安裝了,需要單獨安裝,各平台安裝位址在這裡。
要注意,linux和macos系統中,需要將工具拷貝到$path
環境變數的目錄,也就是mongod
命令所在的目錄,我的mac上位址是usr/local/mongodb/bin
,這樣才可以直接在命令列中使用
mongoexport -d dbname -c collectionname -o file --type json/csv -f field
引數說明:
例子:
sudo mongoexport -d lucky-test -c test_income -o a.json
使用mongoimport
進行匯入,上面安裝mongoexport
時,就安裝了mongoimport
命令,如果沒有安裝需要按照上面的步驟進行安裝
mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field
引數說明:
使用mongodump
備份(需要與mongoexport
同樣進行安裝)
mongodump -h host -d dbname -o directory
mongodump -h ip --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 -o 檔案存在路徑
# mongodump -d test -o /data/
引數說明:
-d
:需要備份的資料庫名稱,如db_test
,如果想匯出所有資料庫,可以去掉-d
-o
:備份的資料存放位置,如:~\dump
,當然該目錄需要提前建立,在備份完成後,系統自動在dump
目錄下建立乙個db_test
目錄,這個目錄裡面存放該資料庫例項的備份資料
使用mongorestore
備份(需要與mongoexport
同樣進行安裝)
mongorestore -h host -d dbname --directoryperdb dbdirectory
# mongorestore --host=10.0.0.25 --port=27017 --db ztjy --dir=ztjy/
引數說明:
-d
:需要恢復的資料庫名稱,如:db_test
,當然這個名稱可以不同於備份的時候,比如new_db
--directoryperdb
:備份資料檔案所在位置,如:~\dump\db_test
(這裡之所以要加db_test
子目錄,從mongoretore
的help
中的--directoryperdb
說明了,「每乙個db在乙個單獨的目錄」。)
mongo 備份恢復
在mongo2.2.2版本中,mongodump的collections檔案,會同步生成乙個metadata.json檔案。這與之前的版本不同。目前檢視到的該json檔案中只包含了索引資訊。該資訊在mongorestore時會使用到,恢復完畢資料後,會建立索引。但該json檔案中不包含分片資訊,所以...
mongo自動備份指令碼和恢復
一 建立mongodb備份目錄 mkdir p data mongodb bak mongodb bak now mkdir p data mongodb bak mongodb bak list 二 新建mongodb資料庫備份指令碼 data mongodb bak mongodb bak.sh...
mongo備份恢復(單機和複製集)
邏輯匯出,可以作做跨版本和公升級匯出 mongoexport uroot p port 27021 d test c t1 authenticationdatabase admin o service t1.json 匯出csv 格式 f 後跟列名 j 開啟併發匯入 mongoexport uroo...