激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術|

香港云服务器
服務器之家 - 數(shù)據(jù)庫 - MongoDB - MongoDB整庫備份與還原以及單個collection備份、恢復方法

MongoDB整庫備份與還原以及單個collection備份、恢復方法

2020-04-21 15:00MongoDB教程網(wǎng) MongoDB

mongodb數(shù)據(jù)庫維護離不開必要的備份、恢復操作,而且一般不會出錯,所以我們在使用的時候大部分時候使用備份和恢復操作就可以了

mongodump.exe備份的原理是通過一次查詢獲取當前服務器快照,并將快照寫入磁盤中,因此這種方式保存的也不是實時的,因為在獲取快照后,服務器還會有數(shù)據(jù)寫入,為了保證備份的安全,同樣我們還是可以利用fsync鎖使服務器數(shù)據(jù)暫時寫入緩存中。

備份前的檢查
> show dbs
MyDB 0.0625GB
admin (empty)
bruce 0.0625GB
local (empty)
test 0.0625GB
> use MyDB
switched to db MyDB
> db.users.find()
{ "_id" : ObjectId("4e290aa39a1945747b28f1ee"), "a" : 1, "b" : 1 }
{ "_id" : ObjectId("4e2cd2182a65c81f21566318"), "a" : 3, "b" : 5 }
>

整庫備份:
mongodump -h dbhost -d dbname -o dbdirectory
-h:MongDB所在服務器地址,例如:127.0.0.1,當然也可以指定端口號:127.0.0.1:27017
-d:需要備份的數(shù)據(jù)庫實例,例如:test
-o:備份的數(shù)據(jù)存放位置,例如:c:\data\dump,當然該目錄需要提前建立,在備份完成后,系統(tǒng)自動在dump目錄下建立一個test目錄,這個目錄里面存放該數(shù)據(jù)庫實例的備份數(shù)據(jù)。

mongodump的官方說明(可通過mongodump --help查看):
options:
--help          produce help message
-v [ --verbose ]     be more verbose (include multiple times for more
              verbosity e.g. -vvvvv)
--version        print the program's version and exit
-h [ --host ] arg    mongo host to connect to ( /s1,s2 for
              sets)
--port arg        server port. Can also use --host hostname:port
--ipv6          enable IPv6 support (disabled by default)
-u [ --username ] arg  username
-p [ --password ] arg  password
--dbpath arg       directly access mongod database files in the given
              path, instead of connecting to a mongod server -
              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
--journal        enable journaling
-d [ --db ] arg     database to use
-c [ --collection ] arg collection to use (some commands)
-o [ --out ] arg (=dump) output directory or "-" for stdout
-q [ --query ] arg    json query
--oplog         Use oplog for point-in-time snapshotting
--repair         try to recover a crashed database
--forceTableScan     force a table scan (do not use $snapshot)

整庫恢復:
mongorestore -h dbhost -d dbname –directoryperdb dbdirectory
-h:MongoDB所在服務器地址
-d:需要恢復的數(shù)據(jù)庫實例,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2
–directoryperdb:備份數(shù)據(jù)所在位置,例如:c:\data\dump\test,這里為什么要多加一個test,而不是備份時候的dump,讀者自己查看提示吧!
–drop:恢復的時候,先刪除當前數(shù)據(jù),然后恢復備份的數(shù)據(jù)。就是說,恢復后,備份后添加修改的數(shù)據(jù)都會被刪除,慎用哦!

mongorestore的官方說明(可通過mongorestore --help查看):
options:
--help         produce help message
-v [ --verbose ]    be more verbose (include multiple times for more
             verbosity e.g. -vvvvv)
--version        print the program's version and exit
-h [ --host ] arg    mongo host to connect to ( /s1,s2 for sets)
--port arg       server port. Can also use --host hostname:port
--ipv6         enable IPv6 support (disabled by default)
-u [ --username ] arg  username
-p [ --password ] arg  password
--dbpath arg      directly access mongod database files in the given
             path, instead of connecting to a mongod server -
             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
--journal        enable journaling
-d [ --db ] arg     database to use
-c [ --collection ] arg collection to use (some commands)
--objcheck       validate object before inserting
--filter arg      filter to apply before inserting
--drop         drop each collection before import
--oplogReplay      replay oplog for point-in-time restore
--oplogLimit arg    exclude oplog entries newer than provided timestamp
             (epoch[:ordinal])
--keepIndexVersion   don't upgrade indexes to newest version
--noOptionsRestore   don't restore collection options
--noIndexRestore    don't restore indexes
--w arg (=1)      minimum number of replicas per write

單個collection備份:
mongoexport -h dbhost -d dbname -c collectionname -f collectionKey -o dbdirectory
-h: MongoDB所在服務器地址
-d: 需要恢復的數(shù)據(jù)庫實例
-c: 需要恢復的集合
-f: 需要導出的字段(省略為所有字段)
-o: 表示導出的文件名

mongoexport的官方說明(可通過mongoexport --help查看):
--help          produce help message
-v [ --verbose ]     be more verbose (include multiple times for more
              verbosity e.g. -vvvvv)
--version         print the program's version and exit
-h [ --host ] arg     mongo host to connect to ( /s1,s2 for
              sets)
--port arg        server port. Can also use --host hostname:port
--ipv6          enable IPv6 support (disabled by default)
-u [ --username ] arg   username
-p [ --password ] arg   password
--dbpath arg       directly access mongod database files in the given
              path, instead of connecting to a mongod server -
              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
--journal         enable journaling
-d [ --db ] arg      database to use
-c [ --collection ] arg  collection to use (some commands)
-f [ --fields ] arg    comma separated list of field names e.g. -f
              name,age
--fieldFile arg      file with fields names - 1 per line
-q [ --query ] arg    query filter, as a JSON string
--csv           export to csv instead of json
-o [ --out ] arg     output file; if not specified, stdout is used
--jsonArray        output to a json array rather than one object per
              line
-k [ --slaveOk ] arg (=1) use secondaries for export if available, default
              true
--forceTableScan     force a table scan (do not use $snapshot)

單個collection恢復:
mongoimport -d dbhost -c collectionname –type csv –headerline –file
-type: 指明要導入的文件格式
-headerline: 批明不導入第一行,因為第一行是列名
-file: 指明要導入的文件路徑

mongoimport的官方說明(可通過mongoimport --help查看):
--help         produce help message
-v [ --verbose ]    be more verbose (include multiple times for more
             verbosity e.g. -vvvvv)
--version        print the program's version and exit
-h [ --host ] arg    mongo host to connect to ( /s1,s2 for sets)
--port arg       server port. Can also use --host hostname:port
--ipv6         enable IPv6 support (disabled by default)
-u [ --username ] arg  username
-p [ --password ] arg  password
--dbpath arg      directly access mongod database files in the given
             path, instead of connecting to a mongod server -
             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
--journal        enable journaling
-d [ --db ] arg     database to use
-c [ --collection ] arg collection to use (some commands)
-f [ --fields ] arg   comma separated list of field names e.g. -f name,age
--fieldFile arg     file with fields names - 1 per line
--ignoreBlanks     if given, empty fields in csv and tsv will be ignored
--type arg       type of file to import. default: json (json,csv,tsv)
--file arg       file to import from; if not specified stdin is used
--drop         drop collection first
--headerline      CSV,TSV only - use first line as headers
--upsert        insert or update objects that already exist
--upsertFields arg   comma-separated fields for the query part of the
             upsert. You should make sure this is indexed
--stopOnError      stop importing at first error rather than continuing
--jsonArray       load a json array, not one item per line. Currently
             limited to 16MB.

其他導入與導出操作:

1. mongoimport -d my_mongodb -c user user.dat

參數(shù)說明:

-d 指明使用的庫, 本例中為” my_mongodb”

-c 指明要導出的表, 本例中為”user”

可以看到導入數(shù)據(jù)的時候會隱式創(chuàng)建表結構

2. mongoexport -d my_mongodb -c user -o user.dat

參數(shù)說明:

-d 指明使用的庫, 本例中為” my_mongodb”

-c 指明要導出的表, 本例中為”user”

-o 指明要導出的文件名, 本例中為”user.dat”

從上面可以看到導出的方式使用的是JSON 的樣式.

延伸 · 閱讀

精彩推薦
  • MongoDB遷移sqlserver數(shù)據(jù)到MongoDb的方法

    遷移sqlserver數(shù)據(jù)到MongoDb的方法

    這篇文章主要介紹了遷移sqlserver數(shù)據(jù)到MongoDb的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下...

    聽楓xl9682021-01-03
  • MongoDBMongodb實現(xiàn)定時備份與恢復的方法教程

    Mongodb實現(xiàn)定時備份與恢復的方法教程

    這篇文章主要給大家介紹了Mongodb實現(xiàn)定時備份與恢復的方法教程,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面...

    chenjsh364522020-05-13
  • MongoDBMongoDB憑什么躋身數(shù)據(jù)庫排行前五

    MongoDB憑什么躋身數(shù)據(jù)庫排行前五

    MongoDB以比去年同期超出65.96分的成績繼續(xù)雄踞榜單前五,這個增幅在全榜僅次于PostgreSQL的77.99,而其相對于4月份的6.10分的增長也是僅次于微軟SQL Server排名...

    孫浩峰3892020-05-22
  • MongoDBMongoDB 內(nèi)存使用情況分析

    MongoDB 內(nèi)存使用情況分析

    都說 MongoDB 是個內(nèi)存大戶,但是怎么知道它到底用了多少內(nèi)存呢...

    MongoDB教程網(wǎng)10002020-09-29
  • MongoDBMongoDB中javascript腳本編程簡介和入門實例

    MongoDB中javascript腳本編程簡介和入門實例

    作為一個數(shù)據(jù)庫,MongoDB有一個很大的優(yōu)勢——它使用js管理數(shù)據(jù)庫,所以也能夠使用js腳本進行復雜的管理——這種方法非常靈活 ...

    MongoDB教程網(wǎng)6982020-04-24
  • MongoDBmongodb基本命令實例小結

    mongodb基本命令實例小結

    這篇文章主要介紹了mongodb基本命令,結合實例形式總結分析了MongoDB數(shù)據(jù)庫切換、查看、刪除、查詢等基本命令用法與操作注意事項,需要的朋友可以參考下...

    dawn-liu3652020-05-26
  • MongoDBMongoDB安裝圖文教程

    MongoDB安裝圖文教程

    這篇文章主要為大家詳細介紹了MongoDB安裝圖文教程,分為兩大部分為大家介紹下載MongoDB和安裝MongoDB的方法,感興趣的小伙伴們可以參考一下 ...

    Yangyi.He6132020-05-07
  • MongoDB分布式文檔存儲數(shù)據(jù)庫之MongoDB分片集群的問題

    分布式文檔存儲數(shù)據(jù)庫之MongoDB分片集群的問題

    這篇文章主要介紹了分布式文檔存儲數(shù)據(jù)庫之MongoDB分片集群的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋...

    Linux-18743072020-12-20
523
主站蜘蛛池模板: 91看片免费版 | av在线直播观看 | 国产高潮失禁喷水爽到抽搐视频 | 羞羞视频免费网站男男 | 老a影视网站在线观看免费 国产精品久久久久久久久久尿 | av电影在线观看网站 | 欧美一区二区三区免费电影 | 久久在线精品视频 | 国产99页 | 免费黄色a| 日日做夜夜操 | 一级免费大片 | 亚洲最大av网站 | 成人男女啪啪免费观看网站四虎 | 黄视频在线网站 | 久久精品亚洲一区二区三区观看模式 | 91精品国产乱码久 | 99国产精品白浆在线观看免费 | 日日碰日日操 | 国产小视频在线 | 毛片视频网站在线观看 | 失禁高潮抽搐喷水h | 免费国产在线视频 | 一区二区三区四区高清视频 | 久久6国产 | 欧美一级黄视频 | 黄色av免费 | 日韩av在线资源 | 久久精品久久久久 | 91看片免费版 | 一级毛片一区 | 91短视频版高清在线观看免费 | 精品国产一区二区三区久久久蜜月 | 国产va在线观看免费 | 康妮卡特欧美精品一区 | 欧美一级特级 | 福利在线小视频 | 亚洲成人免费电影 | 久久久综合 | 色婷婷久久久亚洲一区二区三区 | 免费视频a|