關(guān)于MongoDB數(shù)據(jù)庫(kù):
MongoDB數(shù)據(jù)庫(kù)存儲(chǔ)方式是將文檔存儲(chǔ)在集合之中,而不是像Oracle、MySQL一樣的關(guān)系型數(shù)據(jù)庫(kù)。
MongoDB數(shù)據(jù)庫(kù)是開(kāi)源數(shù)據(jù)庫(kù),也提供具有附加功能的商業(yè)版本。
MongoDB中的數(shù)據(jù)是以鍵值對(duì)(key-value pairs)的形式顯示的,數(shù)據(jù)庫(kù)受到的約束更少。對(duì)于具有快速增長(zhǎng)或其他變化需求的數(shù)據(jù)來(lái)說(shuō),使用MongoDB數(shù)據(jù)庫(kù)是非常有利的。如下圖所示,MongoDB數(shù)據(jù)庫(kù)提供了預(yù)定義結(jié)構(gòu),用戶可以按需采用MongoDB數(shù)據(jù)庫(kù)預(yù)定義的結(jié)構(gòu)。
MongoDB數(shù)據(jù)庫(kù)包含了以“順次存放”的方式填充的文檔集合,這些文檔本身包含了各種字段和信息類(lèi)型,能夠存儲(chǔ)的內(nèi)容和數(shù)據(jù)量是極其豐富的。
MongoDB數(shù)據(jù)庫(kù)的安全特性:基于角色的訪問(wèn)控制、身份驗(yàn)證、授權(quán)和審核、安全傳輸層(TLS)和SSL協(xié)議等。
作為文檔數(shù)據(jù)庫(kù),MongoDB數(shù)據(jù)庫(kù)并不限制存儲(chǔ)數(shù)據(jù)的體量和類(lèi)型,因此適合大數(shù)據(jù)的應(yīng)用環(huán)境,適合基于云的服務(wù)。得益于水平可擴(kuò)展能力、與云服務(wù)的敏捷性結(jié)合,MongoDB數(shù)據(jù)庫(kù)不但能夠減少開(kāi)發(fā)者的工作量,簡(jiǎn)化業(yè)務(wù)與項(xiàng)目的擴(kuò)展流程,還能夠提供高可用性和數(shù)據(jù)的快速恢復(fù)。不過(guò),MongoDB在數(shù)據(jù)的可靠性、一致性、以及安全性等方面不如MySQL。
MongoDB數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)案例:
MongoDB數(shù)據(jù)庫(kù)故障&初檢:
某公司一臺(tái)MongoDB數(shù)據(jù)庫(kù)由于業(yè)務(wù)需要進(jìn)行數(shù)據(jù)遷移,遷移后出現(xiàn)錯(cuò)誤提示:“Windows無(wú)法啟動(dòng)MongoDB服務(wù)(位于 本地計(jì)算機(jī) 上)錯(cuò)誤1067:進(jìn)程意外終止?!?/p>
北亞數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)
北亞數(shù)據(jù)恢復(fù)工程師檢查了故障MongoDB數(shù)據(jù)庫(kù)環(huán)境及底層數(shù)據(jù),發(fā)現(xiàn)故障MongoDB數(shù)據(jù)庫(kù)在遷移過(guò)程中丟失了_mdb_catalog.wt文件,所以啟動(dòng)數(shù)據(jù)庫(kù)報(bào)錯(cuò)。
MongoDB數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)過(guò)程:
1、恢復(fù)MongoDB數(shù)據(jù)庫(kù)丟失的數(shù)據(jù)需要在底層數(shù)據(jù)中找到丟失的_mdb_catalog.wt文件,對(duì)底層數(shù)據(jù)進(jìn)行多次掃描后發(fā)現(xiàn)該文件已經(jīng)被覆蓋。
2、數(shù)據(jù)恢復(fù)工程師調(diào)整數(shù)據(jù)恢復(fù)方法,由于故障MongoDB數(shù)據(jù)庫(kù)是基于WiredTiger存儲(chǔ)引擎的,數(shù)據(jù)恢復(fù)工程師在Windows環(huán)境下編譯出可執(zhí)行的wt工具。
北亞數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)
3、借助編譯后的wt工具對(duì)故障MongoDB數(shù)據(jù)庫(kù)集合文件內(nèi)所有數(shù)據(jù)清洗回寫(xiě),讀取數(shù)據(jù)結(jié)果并寫(xiě)入到文件中。
4、創(chuàng)建一個(gè)全新的MongoDB數(shù)據(jù)庫(kù),創(chuàng)建相應(yīng)數(shù)據(jù)量的集合,將文件逐一寫(xiě)入集合中,查詢數(shù)據(jù)集并重建索引信息。
5、通過(guò)查詢集合中的記錄,確定記錄類(lèi)型,重建集合索引,集合恢復(fù)完成,可以正常查看其中數(shù)據(jù)。
北亞數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)
北亞數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)
6、協(xié)助用戶對(duì)全部集合進(jìn)行索引重建之后,用戶對(duì)數(shù)據(jù)庫(kù)整體進(jìn)行查詢驗(yàn)證,發(fā)現(xiàn)數(shù)據(jù)無(wú)誤,此次數(shù)據(jù)恢復(fù)完成。
審核編輯黃昊宇
-
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
573瀏覽量
17453 -
mongodb
+關(guān)注
關(guān)注
0文章
22瀏覽量
367
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論