如果我們要為我們的應用程式使用 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 工具來管理 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
但是,即使我們使用 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中文網其他相關文章!