修復 MongoDB 資料庫
Mehvish Ashiq
2022年6月7日
本教程根據我們面臨的問題討論在 Windows 作業系統中使用 MongoDB 修復資料庫。
在 MongoDB 中修復資料庫
在不同的場景中,我們需要使用 MongoDB 修復資料庫。例如,如果出現不正確或不乾淨的關閉,或者我們想要檢查不一致和錯誤,我們會修復資料庫。
如果系統意外關閉,我們也會修復資料庫。在進入修復過程之前,讓我們瞭解一下 MongoDB 資料庫的元件。
MongoDB 資料庫元件
MongoDB 資料庫有三個元件,下面簡要說明。
mongo
- 檢查警報日誌的互動式外殼;例如,詳細資訊和重試操作。mongos
- 程序的不當終止。此外,它被迫與例項斷開連線。mongod
- 處理後臺操作和資料請求的守護程序。
以下是一些問題和相應的解決方案。
問題 1:系統意外關閉
以下是此問題的分步解決方案。在執行這些步驟之前,請記住在 root
目錄中有一個 data
資料夾。
-
在 Windows 作業系統中,使用
cd/
命令將目錄更改為root
、C:\>
。 -
複製
mongod.exe
服務的完整路徑。在我們的例子中,它是C:\Program Files\MongoDB\Server\5.0\bin\mongod.exe
。請注意,我們還新增了
--repair
引數。C:\> "C:\Program Files\MongoDB\Server\5.0\bin\mongod.exe" --dbpath C:\data --repair
-
點選 Enter 鍵並等待完成。完成後,將修復資料庫。
問題 2:修復 MongoDB 不正確關閉
如果在 MongoDB 中工作時發生不乾淨的關閉並且日誌功能被禁用,則資料可能會不一致。如果有一個非空的 mongod.lock
檔案,我們將面臨以下錯誤訊息。
錯誤資訊:
Detected unclean shutdown – mongod.lock is not empty
下面給出了這個特定問題的解決方案。
-
在 Windows 命令提示符下使用
cd/
命令切換到root
目錄。 -
我們在
--dbpath
中建立資料檔案的備份副本。 -
使用
--repair
來初始化 MongoDB。 -
執行下面給出的命令並點選 Enter。
C:\> mongod --dbpath /data/db --repair
完成後,將修復 MongoDB。
問題 3:檢測到 Connect Failed Unclean Shutdown
如果我們中的任何人面臨以下錯誤,我們必須遵循兩步過程。
錯誤資訊:
couldn't connect to server 127.0.0.1 shell/mongo.js:8 4 exceptions: connect failed Unclean shutdown detected
第 1 步:開啟 Windows 命令提示符並鍵入 cd/
將目錄更改為 root
。
步驟 2:執行如下命令,按 Enter 並等待結束。完成後,MongoDB 現在就修復了。
C:\> mongod --repair
作者: Mehvish Ashiq