一、mongodb 導出工具:mongoexport
1、概念:mongoexport可以把mongodb的collections導出為JSON或者csv格式的文件,根據參數指定導出的數據項,還可以根據參數篩選導出數據
2、語法:
mongoexport -h host -u username -p password -d dbname -c Collection -o /filePath.filename -type json/csv -f "field"
3.參數說明:
-h :要導出的數據庫主機地址 -u :數據庫用戶名,沒有可以不寫 -p :數據庫密碼,沒有可以不寫 -d : 導出的數據庫名 -c :導出的集合collection名 -o :導出到的文件路徑文件名 -type :導出的類型:json 或者csv 如果是CSV格式,需要指定-f字段參數 -f :字段參數,要導出集合的字段名,也就是要導出那些列
-q :指出導出數據的過濾條件
4、示例:
sudo mongoexport -p 127.0.0.1 -d mymongo -c XuanKaoSubJects -o /home/wxx/users.csv --type csv -f "_id,user,age,status"
二、數據庫導入:mongoimport
1、語法:
mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field --upsert
2、參數說明
-d :數據庫名 -c :collection名 --type :導入的格式默認json -f :導入的字段名 --headerline :如果導入的格式是csv,則可以使用第一行的標題作為導入的字段 --file :要導入的文件
--upsert : 新增或者更新的方式導入數據庫
3、示例
sudo mongoimport -d mongotest -c users --file /home/mongodump/articles.json --type json
三、mongodb數據庫備份:mongodump
1、語法
mongodump -h dbhost -d dbname -o dbdirectory
2、參數說明
-h: MongDB所在服務器地址,例如:127.0.0.1,當然也可以指定端口號:127.0.0.1:27017 -d: 需要備份的數據庫實例,例如:test -o: 備份的數據存放位置,例如:/home/mongodump/,當然該目錄需要提前建立,這個目錄里面存放該數據庫實例的備份數據。
3、示例
sudo rm -rf /home/momgodump/
sudo mkdir -p /home/momgodump/
sudo mongodump -h 192.168.17.129:27017 -d itcast -o /home/mongodump/
四、mongodb數據庫恢復
1、語法
mongorestore -h dbhost -d dbname --dir dbdirectory
2、參數說明
-h: MongoDB所在服務器地址 -d: 需要恢復的數據庫實例,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2 --dir: 備份數據所在位置,例如:/home/mongodump/itcast/ --drop: 恢復的時候,先刪除當前數據,然后恢復備份的數據。就是說,恢復后,備份后添加修改的數據都會被刪除,慎用
3、示例
mongorestore -h 192.168.17.129:27017 -d itcast_restore --dir /home/mongodump/itcast/
必須注意的是 執行mongoexport和mongoimport命令必須在mongo安裝路徑的bin目錄下執行!