一次生產環境下MongoDB備份還原資料

來源:互聯網
上載者:User

標籤:環境   技術分享   雙引號   源檔案   生產環境   匯出資料   生產   特殊   class   

最近開發一個版本的功能當中用到了MongoDB分頁,懶於造資料,於是就研究了下從生產環境上匯出資料到本地來進行測試。

研究了一下,發現MongoDB的備份還原和MySQL文法還挺類似,下面請看詳細介紹。

一、備份資料

因為需要測試資料,所以先要從生產伺服器(CentOS 6.5)上備份出一份資料出來,

格式:  mongodump-h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 --drop 檔案存在路徑

樣本:

 /opt/mongodb/bin/mongodump -h 127.0.0.1 --port 27017 -u 使用者名稱 -p 密碼 -d ad_api_count -o /tmp

(注意Linux下如果密碼有特殊字元需要\轉義)

進入到備份出來的資料ad_api_count目錄下,可以看到ad_api_count中兩個集合的資訊

 

二、還原資料庫

把生產環境下匯出資料庫下載到本地的e:\ee\ad_api_count下,接下來我們就可以匯入資料到本地MongoDB進行測試了

命令格式:mongorestore -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 檔案名稱的具體路徑(尾碼格式為bson)

樣本:

cd C:\Program Files\MongoDB\Server\3.4\binmongorestore.exe -h 127.0.0.1 --port 27017 -u 使用者名稱 -p 密碼 -d ad_api_count e:\cust\ad_api_count\userAdCount.bson

如,我們知道就完成了還原工作

 

三、其他

mongoexport匯出表,或匯出表中部分欄位:

命令格式:mongoexport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 -f 欄位 -q 條件匯出 --csv -o 檔案名稱的具體路徑(尾碼格式可以是.dat或.csv);

mongoimport匯入表,或者表中部分欄位 :

1.還原整表匯出的非csv檔案

   命令格式:mongoimport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --upsert --drop 檔案名稱的具體路徑   (--drop當不需要刪除源檔案可不加)

2.還原部分欄位的匯出檔案

  命令格式:mongoimport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --upsertFields 欄位 --drop 檔案名稱的具體路徑 (--drop當不需要刪除源檔案可不加)

3.還原匯出的csv檔案(匯出資料時如果不加--csv選項,匯出的資料就會存在很多雙引號,匯入就會失敗)

  命令格式:mongoimport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --type 類型(csv) --headerline --upsert --drop 檔案名稱的具體路徑  

  注意:如果資料庫存在資料,要匯入最新的資料,則需要加--upsert選項,會更新資料,否則會報錯(提示重複鍵錯誤收集)

一次生產環境下MongoDB備份還原資料

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.