MongoDB 是一種常用的面向文檔的 NoSQL 數據庫程序。 NoSQL 一詞不僅是對 SQL 的引用,也是一種設計數據庫的方式。 NoSQL 數據庫被建模用於通過文檔存儲和檢索數據,而不是使用傳統關係數據庫中使用的表格結構(表和行)。
MongoDB 是一個通用數據庫,其中數據以鍵值對的形式存儲在一個靈活的類似 JSON 的文檔中。每個 MongoDB 數據庫都有一個包含文檔的集合。這些文檔可以有不同的大小、內容和字段數。它支持可選的模式模型,因此無需預定義數據庫藍圖。 MongoDB 數據庫具有很強的可擴展性。
面向文檔的模型使 MongoDB 非常靈活。它非常擅長負載均衡和數據複製,可以在多台服務器上運行。這些功能允許您在發生硬件故障時保持系統運行。 MongoDB的主要特點是:
- 即席查詢
- 指數
- 聚合
- 負荷分配
- 帶帽系列
- 複製
如何在 CentOS 8 上安裝 MongoDB
您必須以 root 身份登錄或具有 sudo 權限才能在您的系統上安裝 MongoDB。
MongoDB 在 CentOS8 存儲庫中默認不可用。因此,首先您需要創建一個新文件並將 MongoDB 添加到 CentOS 8 存儲庫。使用以下命令創建一個新文件。
sudo nano /etc/yum.repos.d/mongodb-org-5.0.repo
然後將以下文本複制並粘貼到上面創建的文本文件中,以便您可以直接從終端安裝 MongoDB。
[mongodb-org-5.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc
保存並關閉文件。
然後使用以下命令安裝 MongoDB:
sudo dnf install mongodb-org -y
上面的命令將安裝最新的穩定版本的 MongoDB。目前,它是 5.0。 您可以通過訪問 MongoDB 官方網站查看最新版本。如果要安裝特定版本,請將文本文件中的 5.0 替換為您的首選版本。
要驗證安裝,請運行 MongoDB 數據庫。
mongo
然後運行以下命令以查看您的系統上安裝了哪個版本。
db.version()
Output: 5.0.1
然後使用以下命令退出 shell:
exit
安裝過程完成後,使用以下命令啟動 MongoDB:
sudo systemctl start mongod
然後使用以下命令啟用 MongoDB 服務:
sudo systemctl enable mongod
您可以使用以下命令檢查 MongoDB 服務的狀態:
sudo systemctl status mongod

如何啟用 MongoDB 身份驗證
現在 MongoDB 已成功安裝在您的系統上,請將其配置為更安全。
MongoDB 默認禁用身份驗證。這允許任何用戶修改、創建、刪除或操作數據庫。我們建議您啟用身份驗證並限制對 MongoDB 的訪問。 可以通過編輯以下配置文件來啟用 MongoDB 身份驗證:
nano /etc/mongod.conf
在首選瀏覽器中打開配置文件後,搜索#security。 去掉#號[セキュリティ]取消註釋該部分並在下一行[承認:有効化]添加。 “授權:啟用”行必須縮進兩個空格。編輯後,配置文件應如下所示:

保存 如果您使用的是 Nano,請使用 Ctrl + X 退出文件。然後將更改應用到 MongoDB 並使用以下命令重新啟動服務:
systemctl restart mongod
您可以再次使用上述命令檢查 MongoDB 服務的狀態,並確保服務已成功重啟。
如何創建 MongoDB 管理員用戶
接下來,創建一個具有所有管理員權限的 MongoDB 用戶管理員。創建一個新的 MongoDB 管理員用戶並首先使用以下命令訪問 MongoDB 服務:
mongo
然後運行以下命令以管理員身份使用該服務。
use admin
然後使用以下命令創建一個新用戶。
db.createUser( { user: "admin1", pwd: "pass", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] } )
您可以替換 admin1 並使用您喜歡的用戶名和密碼傳遞它。

然後使用以下命令退出 shell:
exit
如何驗證 MongoDB 身份驗證
現在您已配置為需要身份驗證,您將無法在沒有身份驗證的情況下在 MongoDB shell 中運行命令。
要看到這一點,請打開 MongoDB 服務並嘗試運行各種命令。
show users

show dbs
在上面的示例中,訪問受到限制並且不顯示任何輸出。
您可以使用以下命令以管理用戶身份訪問 MongoDB 服務:
mongo -u admin1 -p --authenticationDatabase admin
現在,如果您再次使用 show dbs 命令,您將獲得以下輸出:
show dbs
Output: admin 0.000GB config 0.000GB local 0.000GB
結論是
MongoDB 是一個免費的開源 NoSQL 數據庫。與傳統的基於關係的數據庫相比,這為開發人員提供了更大的靈活性。 將數據存儲在類似 JSON 的文檔中,從而在客戶端和數據庫之間實現更快、更高效的數據傳輸。
在這份綜合指南中,您學習瞭如何在 CentOS 8 操作系統上安裝和配置 MongoDB。