首頁 >資料庫 >MongoDB >如何重新啟動像 MongoDB 這樣的 NoSQL 資料庫服務?

如何重新啟動像 MongoDB 這樣的 NoSQL 資料庫服務?

WBOY
WBOY轉載
2023-08-28 08:01:171206瀏覽

如何重启像 MongoDB 这样的 NoSQL 数据库服务?

如果我們要為我們的應用程式使用 NoSQL 資料庫,那麼我們需要快速且易於使用的東西.

我們了解到「NoSQL」不一定意味著「無需維護」。我們考慮使用 MongoDB 的 Atlas 或 Amazon 的 DynamoDB 等託管託管服務,但我們選擇自己託管,無論是在我們的本地還是在我們自己的雲端實例中。我們評估了幾個 NoSQL 選項,包括 Redis 和 Cassandra,並選擇了 MongoDB。

我們可以透過從 Linux 發行版安裝、使用 Mongo 的儲存庫或使用 snap 來安裝它。但如果出現問題,我們可能需要重新啟動它。

我們將了解重新啟動 MongoDB 資料庫的不同方法。

服務

我們也許能夠找到舊腳本服務的參考。它們提供了一個標準命令,無論我們的 Linux 安裝是使用 systemd、upstart 還是其他類型的啟動服務,該命令都可以運作。 您是否使用服務並不重要;只是不再需要了

讓我們再次啟動 MongoDB 的本機實例 -

$ service mongod restart

在偉大的初始化戰爭期間,當不同的團體爭論啟動和控制 Unix 或 Linux 系統部分的不同方法時,這個程式變得流行。

Red Hat Linux 提供了一個名為「system-config-kickstart」的集中式腳本,該腳本負責在啟動時執行這些腳本並在不再需要時停止它們。

Canonical 嘗試用名為 Upstart 的系統取代這些腳本。

服務腳本不斷發展以處理相互競爭的啟動、停止和狀態工具 - 現在,服務腳本也包含 systemctl。 Red Hat 在 7.0 版本中採用了 SystemD。 Canonical 在 Ubuntu 20.04 中採用了 SystemD

最近,systemd已經成為我們在Linux環境下啟動服務的預設方式。並且不再需要服務。

使用systemctl

我們將使用 systemctl 工具來管理 MongoDB 和任何依賴項。

當我們最初安裝 MongoDB 時,它的所有二進位和設定檔位置都已設置,但目前尚未運行。

為了看看我們是否可以使用 status 指令來檢查我們的服務是否已經啟動,我們 可以運行以下命令 -

$ systemctl status mongod
mongod.service - MongoDB Database Server
   Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor
preset: enabled)
   Active: inactive (dead)
   Docs: https://docs.mongodb.org/manual

Systemd為我們提供了幾個用於啟動、停止和重新啟動的命令 服務。

讓我們使用以下命令重新啟動 -

命令

$ sudo service mongod restart
$ sudo service mongod status

輸出

mongod.service - MongoDB Database Server
   Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor
   preset: enabled)
   Active: active (running) since Tue 2022-10-11 07:45:50 HST; 7s ago
   Docs: https://docs.mongodb.org/manual
   Main PID: 124287 (mongod)
   Memory: 135.4M
   CGroup: /system.slice/mongod.service
   └─154987 /usr/bin/mongod --config /etc/mongod.conf
   Oct 11 07:45:50 shoes systemd[1]: Started MongoDB Database Server.

我們可以檢查狀態以取得最近的日誌條目的發生日期和時間,以及 記錄它們的主機名稱。

要再次重新啟動我們的 MongoDB 伺服器,我們只需要執行 -

$ systemctl mongod restart

將 MongoDB 設定為在系統啟動時透過 enable 啟動

但是,即使我們使用 systemd 啟動了 MongoDB,這並不一定意味著它會在我們的系統啟動時始終運行。

我們可以使用systemctl“enable”指令來確保MongoDB隨我們的系統一起啟動。

$ sudo systemctl enable mongod
Created symlink /etc/systemd/system/multi-user.target.wants/mongod.service → /lib/systemd/system/mongod.service.

現在我們已經了解了 systemd 如何管理服務文件,讓我們快速瀏覽一下 etc/systemd 下的連結以獲取這些服務文件的清單。

現在我們已經為應用程式設定了 Dockerfile,讓我們來執行它吧!我們希望確保 MongoDB 在容器啟動時啟動。為此,我們需要告訴 Docker 在滿足其所有依賴項後啟動 MongoDB。

結論

在這裡,我們使用 systemd 服務管理工具來檢查 MongoDB 伺服器的狀態,然後在必要時重新啟動它。

還有其他方法可以做到這一點,但我們不需要了解它們,除非我們正在使用較舊的系統。

最後,如果我們希望 MongoDB 伺服器在重新啟動電腦時自動啟動,請記得「啟用」它。

以上是如何重新啟動像 MongoDB 這樣的 NoSQL 資料庫服務?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除