mongodb提供了兩個命令來備份(mongodump )和恢復(mongorestore )資料庫。
1.備份(mongodump )
用法 :
[root@web3 3]# mongodump --help
options:
--help produce help message
-v [ --verbose ] be more verbose (include multiple times for more
verbosity e.g. -vvvvv)
-h [ --host ] arg mongo host to connect to ("left,right" for pairs)
-d [ --db ] arg database to use
-c [ --collection ] arg collection to use (some commands)
-u [ --username ] arg username
-p [ --password ] arg password
--dbpath arg directly access mongod data files in the given path,
instead of connecting to a mongod instance - needs
to lock the data directory, so cannot be used if a
mongod is currently accessing the same path
--directoryperdb if dbpath specified, each db is in a separate
directory
-o [ --out ] arg (=dump) output directory
例子:[root@web3 ~]# mongodump -h 192.168.1.103 -d citys -o /backup/mongobak/3
connected to: 192.168.1.103
database: citys to /backup/mongobak/3/citys
citys.building to /backup/mongobak/3/citys/building.bson
13650 objects
citys.system.indexes to /backup/mongobak/3/citys/system.indexes.bson
1 objects
備份出來的資料是二進位制的,已經經過壓縮。比實際資料庫要小很多,我的資料庫顯示占用了260多m,備份後只有2m。
2.恢復(mongorestore )
用法:[root@web3 3]# mongorestore --help
usage: mongorestore [options] [directory or filename to restore from]
options:
--help produce help message
-v [ --verbose ] be more verbose (include multiple times for more
verbosity e.g. -vvvvv)
-h [ --host ] arg mongo host to connect to ("left,right" for pairs)
-d [ --db ] arg database to use
-c [ --collection ] arg collection to use (some commands)
-u [ --username ] arg username
-p [ --password ] arg password
--dbpath arg directly access mongod data files in the given path,
instead of connecting to a mongod instance - needs to
lock the data directory, so cannot be used if a
mongod is currently accessing the same path
--directoryperdb if dbpath specified, each db is in a separate
directory
--drop drop each collection before import
--objcheck validate object before inserting
--drop引數可以在匯入之前把collection先刪掉。
例子:[root@web3 3]# mongorestore -h 127.0.0.1 --directoryperdb /backup/mongobak/3/
connected to: 127.0.0.1
/backup/mongobak/3/citys/building.bson
going into namespace [citys.building]
13667 objects
/backup/mongobak/3/citys/system.indexes.bson
going into namespace [citys.system.indexes]
1 objects
另外mongodb還提供了mongoexport 和 mongoimport 這兩個命令來匯出或匯入資料,匯出的資料是json格式的。也可以實現備份和恢復的功能。
例:mongoexport -d mixi_top_city_prod -c building_45 -q '' > mongo_10832545.bson
mongoimport -d mixi_top_city -c building_45 --file mongo_10832545.bson
MongoDB備份與恢復
任何資料庫都需要備份和恢復,這個重要性就不多說了,大家都懂的。首先說下語法 備份 mongodump hdbhost ddbname odbdirectory h mongdb所在伺服器位址,例如 127.0.0.1,當然也可以指定埠號 127.0.0.1 27017 d 需要備份的資料庫例項,例如...
mongoDB備份與恢復
1 匯入 匯出可以操作的是本地的mongodb伺服器,也可以是遠端的.所以,都有如下通用選項 h host 主機 port port 埠 u username 使用者名稱 p passwd 密碼 2 mongoexport 匯出json格式的檔案 問 匯出哪個庫,哪張表,哪幾列,哪幾行?d 庫名 c...
MongoDB 備份與恢復
備份 在mongo中,使用mongodump命令來備份資料。該命令匯出資料到指定的目錄。語法 mongodump h dbhost d dbname o dbdirectory dbhost 資料庫位址,可以指定埠 dbname 資料庫例項名稱 dbdirectory 匯出的目標路徑 其他可選引數 ...