欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MongoDB副本集丟失數據的測試實例教程

 更新時間:2019年05月24日 08:35:47   作者:東山絮柳仔  
這篇文章主要給大家介紹了關于MongoDB副本集丟失數據的測試的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用MongoDB具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧

在MongoDB副本集的測試中發(fā)現了一個丟數據的案例。

1. 概要描述

測試場景為:一主一從一驗證

測試案例

step1 :關閉從副本;

step 2 ;向主副本中插入那條數據;

step 3 :關閉主副本;

step 4 :開啟輔助副本,此副本升級為主副本,這是后會看到新的主副本沒有剛才插入的幾筆數據。

----測試時,請注意測試步驟。

step 5 :原主節(jié)點 再次加入到集群中后,會變成新的輔助副本。測試插入的數據會產生回滾。

2. 具體的測試步驟

(1)測試服務器,原測試環(huán)境

主Server:Port 副Server:Port 見證Server:Port
XXX.XXX.XXX.124:27220 XXX.XXX.XXX.123:27221 XXX.XXX.XXX.134:27220

(2)測試步驟

Step 1 向主數據庫(XXX.XXX.XXX.124:27220),插入以下數據,執(zhí)行時間要長一些。

for(var i = 0; i < 100000; i++) { db.order0522.insert({a: i});};

Step 2 在上述命令執(zhí)行的過程中,關于副主Server上的mongodb服務,服務命名為mongodboplogtest.service

systemctl stop mongodboplogtest.service

Step 3.查詢主副本上數據庫insert的數據量,為100000.命令完全插入。

Step 4.關閉主副本上的Mongodb 服務,服務命名為mongodboplogtest.service

systemctl stop mongodboplogtest.service

Step 5 開啟輔助節(jié)點上的MongoDB服務

systemctl start mongodboplogtest.service 

step 6 此時輔助節(jié)點(XXX.XXX.XXX.123)升級為主節(jié)點,此時數據為30337(100000-30337 筆記錄丟失了)

此時 124 (原主節(jié)點)為"stateStr" : "(not reachable/healthy)"

step 7 開啟原主節(jié)點上的服務,集群的狀態(tài),關于原主節(jié)點的描述短暫處于"stateStr" : "ROLLBACK"

step 8 回滾后,狀態(tài)變?yōu)?stateStr" : "SECONDARY"

step 9 查詢原主節(jié)點數據,此時數據量為30337(100000-30337 筆也記錄丟失了)

3.丟失的數據是否可以找到

我們發(fā)現,重啟原主節(jié)點(XXX.XXX.XXX.124)mongodb服務后,在數據目錄下多了一個rollback 目錄。

重啟前的數據目錄

重啟后的數據目錄

進去這個目錄后,我們看到生成了一個以數據庫+集合名字+時間的 bson 文件。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

相關文章

  • MongoDB操作之日期轉換方式(string、ISODate、時間戳)

    MongoDB操作之日期轉換方式(string、ISODate、時間戳)

    這篇文章主要介紹了MongoDB操作之日期轉換方式(string、ISODate、時間戳),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • mongodb數據庫遷移變更的解決方案

    mongodb數據庫遷移變更的解決方案

    眾所周知mongodb數據庫是一個非關系類型的數據,有著非常靈活和高性能的特點得到了開發(fā)者的喜愛,這篇文章主要給大家介紹了關于mongodb數據庫遷移變更的相關資料,需要的朋友可以參考下
    2021-09-09
  • MongoDB 查詢操作的實例詳解

    MongoDB 查詢操作的實例詳解

    這篇文章主要介紹了MongoDB 查詢操作的實例的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • MongoDB釋放空閑空間的幾種常用方法

    MongoDB釋放空閑空間的幾種常用方法

    這篇文章主要給大家介紹了關于MongoDB釋放空閑空間的幾種常用方法,分別包括compact、db.repairDatabase()、secondary節(jié)點重同步以及db.copyDatabase()這幾種方法,需要的朋友可以參考借鑒,下面來一起看看吧
    2018-07-07
  • MongoDB插入、更新、刪除文檔實現代碼

    MongoDB插入、更新、刪除文檔實現代碼

    本文通過實例代碼給大家簡單介紹了mongodb插入、更新、刪除文檔的方法,需要的的朋友參考下吧
    2017-04-04
  • MongoDB中的一些坑(最好不要用)

    MongoDB中的一些坑(最好不要用)

    這篇文章主要介紹了MongoDB中的一些坑(最好不要用),本文總結了MongoDB 數據庫級鎖、建索引導致數據庫阻塞、不合理使用嵌入 embed document、不合理使用 Array 字段等4個坑,需要的朋友可以參考下
    2015-03-03
  • 詳解MongoDB中用sharding將副本集分配至服務器集群的方法

    詳解MongoDB中用sharding將副本集分配至服務器集群的方法

    副本集是MongoDB的主從復制中的重要功能,經常被用來作額外的備份,這里我們就來詳解MongoDB中用sharding將副本集分配至服務器集群的方法,首先還是來回顧一下MongoDB中副本集的基本知識:
    2016-07-07
  • MongoDB數據庫基礎知識整理

    MongoDB數據庫基礎知識整理

    這篇文章介紹了MongoDB數據庫的基礎知識,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • MongoDB4.28開啟權限認證配置用戶密碼登錄功能

    MongoDB4.28開啟權限認證配置用戶密碼登錄功能

    這篇文章主要介紹了MongoDB4.28開啟權限認證配置用戶名和密碼認證登錄,本文分步驟給大家介紹開啟認證登錄的方法,需要的朋友可以參考下
    2022-01-01
  • MongoDB 快速入門

    MongoDB 快速入門

    MongoDB 快速入門,想要學習MongoDB的朋友可以參考下。
    2011-10-10

最新評論