mongoDB備份與恢復

2021-07-03 22:28:05 字數 1847 閱讀 9823

1: 匯入/匯出可以操作的是本地的mongodb伺服器,也可以是遠端的.

所以,都有如下通用選項:

-h host   主機

--port port    埠

-u username 使用者名稱

-p passwd   密碼

2: mongoexport 匯出json格式的檔案

問: 匯出哪個庫,哪張表,哪幾列,哪幾行?

-d  庫名

-c  表名

-f  field1,field2...列名

-q  查詢條件

-o  匯出的檔名

-- csv  匯出csv格式(便於和傳統資料庫交換資料)

例:[root@localhost mongodb]# ./bin/mongoexport -d test -c news -o test.json

connected to: 127.0.0.1

exported 3 records

[root@localhost mongodb]# ls

bin  dump  gnu-agpl-3.0  readme  test.json  third-party-notices

[root@localhost mongodb]# more test.json 

, "title" : "aaaa" }

, "title" : "today is sataday" }

, "title" : "ok now" }

例2: 只匯出goods_id,goods_name列

./bin/mongoexport -d test -c goods -f goods_id,goods_name -o goods.json

例3: 只匯出**低於1000元的行

./bin/mongoexport -d test -c goods -f goods_id,goods_name,shop_price -q 『}』 -o goods.json

注: _id列總是匯出

mongoimport 匯入

-d 待匯入的資料庫

-c 待匯入的表(不存在會自己建立)

--type  csv/json(預設)

--file 備份檔案路徑

例1: 匯入json

./bin/mongoimport -d test -c goods --file ./goodsall.json

例2: 匯入csv

./bin/mongoimport -d test -c goods --type csv -f goods_id,goods_name --file ./goodsall.csv 

./bin/mongoimport -d test -c goods --type csv --headline -f goods_id,goods_name --file ./goodsall.csv 

mongodump 匯出二進位制bson結構的資料及其索引資訊

-d  庫名

-c  表名

-f  field1,field2...列名

例: mongodum -d test  [-c 表名]  預設是匯出到mongo下的dump目錄

規律: 

1:匯出的檔案放在以database命名的目錄下

2: 每個表匯出2個檔案,分別是bson結構的資料檔案, json的索引資訊

3: 如果不宣告表名, 匯出所有的表

mongorestore 匯入二進位制檔案

例:./bin/mongorestore -d test --directoryperdb dump/test/ (mongodump時的備份目錄)

二進位製備份,不僅可以備份資料,還可以備份索引, 

備份資料比較小.

MongoDB備份與恢復

任何資料庫都需要備份和恢復,這個重要性就不多說了,大家都懂的。首先說下語法 備份 mongodump hdbhost ddbname odbdirectory h mongdb所在伺服器位址,例如 127.0.0.1,當然也可以指定埠號 127.0.0.1 27017 d 需要備份的資料庫例項,例如...

MongoDB 備份與恢復

備份 在mongo中,使用mongodump命令來備份資料。該命令匯出資料到指定的目錄。語法 mongodump h dbhost d dbname o dbdirectory dbhost 資料庫位址,可以指定埠 dbname 資料庫例項名稱 dbdirectory 匯出的目標路徑 其他可選引數 ...

mongodb備份與恢復

一 備份 mongodump d mailaccess c mail q o data dump 備份mailaccess database的mail collection到 data dump目錄 d 備份哪個資料庫 c 備份哪個collection 可選,不傳預設為整個database q 指定...