MongoDB 是一個免費和開源的面向文檔的數據庫。與關係數據庫將數據存儲在表中並且在添加新數據之前需要定義的模式不同,MongoDB 文檔是具有動態模式(沒有固定模式)的鍵值對,是一種無序的集合。所以你可以在同一個字段中保存整數、字符串或對象。這取決於您的應用需求。此外,由於其動態特性,MongoDB 非常適合存儲 JSON 對象,使其成為理想的 RESTful 數據庫。

MongoDB支持二級索引,但並不是所有場景都需要二級索引。這意味著 MongoDB 的讀取速度可能比某些關係數據庫稍慢(因為必須從磁盤讀取更多字段),但寫入速度通常更快,因為不需要維護索引。。

MongoDB 對於需要存儲和管理數據(關係和非結構化)的 Linux 用戶很有用,尤其是在需要可擴展性和高可用性時。 MongoDB 越來越受歡迎主要是因為它能夠存儲 JSON 文檔,這使其成為移動客戶端(例如 iPhone)和傳統桌面瀏覽器(例如​​ Firefox)使用的混合 Web 應用程序的理想選擇。 MongoDB 可能是一個理想的選擇,因為它的無模式設計支持這些現代 Web 應用程序中數據的動態特性。

MongoDB 的另一個亮點是社交媒體網站,如 Twitter、Facebook 和 LinkedIn。這些網站越來越多地提供 REST API,用於將社交聯繫(朋友、喜歡等)存儲為 JSON 文檔,這也使它們非常適合 MongoDB。

MongoDB 也被亞馬遜的 EC2 和 Heroku 等雲計算提供商使用。這是因為它的可擴展性和高可用性非常適合處理大量動態變化數據的需要。

本指南將向您展示如何在 Rocky Linux 8 操作系統上設置您自己的 MongoDB 數據庫。安裝軟件後,創建數據庫並執行一些基本的管理任務。

先決條件

要遵循本指南,您必須運行 Rocky Linux 8 並以具有 sudo 權限的非根用戶身份登錄。

更新系統

在安裝任何軟件之前,您應該通過運行以下命令確保所有系統包都是最新的:

sudo dnf -y update

重新啟動服務器以使系統更改生效,然後以相同的非根用戶身份重新登錄。

添加 MongoDB 存儲庫

在您的系統上安裝 MongoDB 之前,您必須首先添加 MongoDB 存儲庫。 您有兩種選擇:您可以下載並安裝該程序的 CE 版本(功能有限但個人免費使用)或購買商業訪問權限以獲得更強大的功能。

要在 Rocky Linux 8 上安裝 MongoDB 存儲庫,請運行以下命令:

sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo<<EOF
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF

在 Rocky Linux 8 上安裝 MongoDB

現在已經設置了 MongoDB 存儲庫,您可以通過運行以下命令來安裝 MongoDB 5.0:

sudo dnf install mongodb-org

安裝完成後,啟動並啟用 MongoDB 服務,使其在系統重啟時自動啟動。

sudo systemctl start mongod
sudo systemctl enable mongod

要檢查您的 MongoDB 版本,請運行以下命令:

mongo --version

要檢查 MongoDB 服務是否正在運行,請運行以下命令:

sudo systemctl status mongod

您應該看到類似於以下內容的輸出:

檢查服務狀態

要檢查 MongoDB 是否安裝正確,請運行以下命令: MongoDB 守護程序應該準備就緒並等待連接,如輸出行所示。

MongoDB 正在等待連接

測試您的 MongoDB 安裝

安裝過程完成後,您就可以開始使用 MongoDB 了。默認情況下,MongoDB 偵聽本地主機 IP 地址上的端口 27017。所以所有命令都應該在本地主機上運行。

出於演示目的,我們將向您展示如何連接到 MongoDB shell 並將記錄(即文檔)插入測試集合(即表)。當然,在我們這樣做之前,我們需要確保 MongoDB 守護進程正在服務器上運行以用於測試目的。

您可以使用以下命令登錄到 MongoDB shell。

mongo

此命令在不設置身份驗證的情況下登錄到 MongoDB shell。

啟動 MongoDB 外殼

您可以在 MongoDB shell 中運行任何數據庫管理命令。 MongoDB 提供了一個名為 test 的示例數據庫。這是一個很好的起點。要獲取服務器上所有可用數據庫的列表,請在 MongoDB shell 中運行以下命令:

db

數據庫命令

要使用 MongoDB 創建新數據庫,請運行以下命令:

use DATABASE_NAME

其中 DATABASE_NAME 是要創建的數據庫的名稱。如果具有該名稱的數據庫已經存在,則此命令切換到當前數據庫。如果數據庫不存在,將自動創建。成功的命令會返回消息“已切換到 db DATABASE_NAME”。

讓我們創建一個名為 linux_mongo 的數據庫

use linux_mongo

使用數據庫

創建數據庫後,您可以通過運行以下命令將記錄插入數據庫(集合):

db.linux.insertOne(
{ "ubuntu" : "20.04",
"rocky linux" : "8",
"debian" : "11",
"alma linux" : "8",
}
)

根據 進來 插入數據。

插入數據

要列出您的數據庫集合,只需在 MongoDB shell 中輸入 show collections 命令。

show collections

輸出如下所示:

查看收藏夾

要查看集合中的所有集合內容或數據,請使用:

db.NAME-OF-COLLECTION.find().pretty()

Mongo 世界的 pretty() 方法漂亮地打印結果,特別是對於人類閱讀。讓我們查看上面創建的 Linux 集合中的所有數據。

db.linux.find().pretty()

輸出如下所示:

漂亮的印刷品

要退出 MongoDB shell,請在提示符處輸入以下命令:

exit

結論是

本教程向您展示瞭如何在 Rocky Linux 系統上安裝和配置 MongoDB。我還提供了一些基本命令,展示如何連接到 MongoDB shell 並查看 MongoDB 實例中存在的所有數據庫和集合。

本指南是基本安裝指南。有關詳細信息,請參閱可用的 MongoDB 文檔 這裡.