MongoDB 是一款流行的開源 NoSQL 數(shù)據(jù)庫,廣泛應(yīng)用于 Web 應(yīng)用、移動(dòng)應(yīng)用、數(shù)據(jù)分析等場(chǎng)景。它采用文檔存儲(chǔ)方式(基于 BSON 格式),相比傳統(tǒng)的關(guān)系型數(shù)據(jù)庫具有更高的靈活性和擴(kuò)展性。在這篇文章中,我們將詳細(xì)介紹如何在 Ubuntu 系統(tǒng)中快速安裝和配置 MongoDB 數(shù)據(jù)庫。無論你是 MongoDB 新手還是有一定經(jīng)驗(yàn)的開發(fā)者,都能從中獲得有用的信息。
一、準(zhǔn)備工作
在安裝 MongoDB 之前,確保你的 Ubuntu 系統(tǒng)已經(jīng)更新到最新版本,并且具備一定的網(wǎng)絡(luò)連接權(quán)限。如果你使用的是 Ubuntu 20.04 或更高版本,以下的步驟應(yīng)該都能順利完成。
二、更新 Ubuntu 系統(tǒng)
在開始安裝 MongoDB 之前,首先需要更新你的系統(tǒng)軟件包列表,以確保所有的依賴項(xiàng)都是最新的。打開終端并執(zhí)行以下命令:
sudo apt update sudo apt upgrade -y
這兩個(gè)命令分別用來更新軟件包列表和升級(jí)系統(tǒng)中的已安裝軟件包。建議你在安裝 MongoDB 之前先完成這一步。
三、安裝 MongoDB 官方庫
MongoDB 官方提供了適用于 Ubuntu 的安裝包,我們可以直接通過 MongoDB 的官方倉庫來進(jìn)行安裝。首先,導(dǎo)入 MongoDB 的公共 GPG 密鑰:
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
接著,添加 MongoDB 官方倉庫到你的 apt 源中。對(duì)于 Ubuntu 20.04 和 22.04,使用以下命令:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
這條命令將 MongoDB 6.0 的官方倉庫添加到系統(tǒng)的 apt 配置文件中。$(lsb_release -sc) 會(huì)自動(dòng)識(shí)別你的 Ubuntu 版本,并根據(jù)版本自動(dòng)配置倉庫源。
四、安裝 MongoDB
現(xiàn)在,你已經(jīng)添加了 MongoDB 的倉庫源,接下來可以使用以下命令來安裝 MongoDB 服務(wù)器和客戶端:
sudo apt update sudo apt install -y mongodb-org
這個(gè)命令會(huì)安裝 MongoDB 的所有必要組件,包括 MongoDB 服務(wù)器、客戶端工具和管理工具。如果你只需要安裝 MongoDB 服務(wù)器,可以選擇安裝單獨(dú)的組件。
五、啟動(dòng) MongoDB 服務(wù)
安裝完成后,MongoDB 的服務(wù)會(huì)自動(dòng)啟動(dòng)。你可以使用以下命令檢查 MongoDB 服務(wù)的狀態(tài):
sudo systemctl status mongod
如果看到類似于“active (running)”的提示,說明 MongoDB 已經(jīng)成功啟動(dòng)。如果 MongoDB 沒有自動(dòng)啟動(dòng),可以使用以下命令手動(dòng)啟動(dòng)它:
sudo systemctl start mongod
為了確保 MongoDB 在系統(tǒng)重啟后自動(dòng)啟動(dòng),可以使用以下命令啟用服務(wù):
sudo systemctl enable mongod
六、配置 MongoDB
MongoDB 默認(rèn)監(jiān)聽本地的 27017 端口。如果你希望讓遠(yuǎn)程客戶端連接 MongoDB,或者調(diào)整其他配置,可以修改 MongoDB 的配置文件。
MongoDB 的默認(rèn)配置文件位于 "/etc/mongod.conf"。使用以下命令打開該配置文件進(jìn)行編輯:
sudo nano /etc/mongod.conf
在配置文件中,你可以修改以下關(guān)鍵項(xiàng):
bindIp: 默認(rèn)情況下,MongoDB 只允許從本地訪問。如果你想允許遠(yuǎn)程連接,可以將此項(xiàng)修改為 0.0.0.0(允許所有 IP 連接)或者設(shè)置為特定的 IP 地址。
security: 如果你需要啟用認(rèn)證功能,可以取消注釋并設(shè)置 "authorization: enabled",開啟 MongoDB 的用戶認(rèn)證機(jī)制。
修改配置文件后,保存并退出編輯器。然后,重啟 MongoDB 服務(wù)以使配置生效:
sudo systemctl restart mongod
七、驗(yàn)證 MongoDB 是否安裝成功
通過執(zhí)行以下命令進(jìn)入 MongoDB shell,驗(yàn)證 MongoDB 是否成功運(yùn)行:
mongo
如果能夠進(jìn)入 MongoDB 提示符,說明安裝和配置都已經(jīng)成功。如果出現(xiàn)錯(cuò)誤提示,可以檢查日志文件或回到配置文件查看是否有遺漏的步驟。
八、創(chuàng)建 MongoDB 管理員用戶
為了提高數(shù)據(jù)庫的安全性,我們建議你創(chuàng)建一個(gè)管理員用戶,并啟用認(rèn)證機(jī)制。在 MongoDB 中創(chuàng)建管理員用戶的過程如下:
首先,使用以下命令進(jìn)入 MongoDB shell:
mongo
然后,切換到 admin 數(shù)據(jù)庫:
use admin
接下來,創(chuàng)建一個(gè)管理員用戶:
db.createUser({
user: "admin",
pwd: "your_password",
roles: [ { role: "root", db: "admin" } ]
})將 "your_password" 替換為你希望設(shè)置的密碼。創(chuàng)建完成后,退出 MongoDB shell:
exit
修改 MongoDB 配置文件 "/etc/mongod.conf",啟用認(rèn)證功能:
security: authorization: "enabled"
重啟 MongoDB 服務(wù)以使認(rèn)證機(jī)制生效:
sudo systemctl restart mongod
現(xiàn)在,你可以使用以下命令通過管理員賬戶登錄 MongoDB:
mongo -u admin -p --authenticationDatabase admin
九、使用 MongoDB
MongoDB 提供了強(qiáng)大的查詢和數(shù)據(jù)操作功能。你可以通過 MongoDB shell 進(jìn)行各種數(shù)據(jù)庫操作,例如創(chuàng)建數(shù)據(jù)庫、添加文檔、查詢數(shù)據(jù)等。以下是一些常見的 MongoDB 操作示例:
創(chuàng)建數(shù)據(jù)庫:在 MongoDB 中,數(shù)據(jù)庫在你第一次添加數(shù)據(jù)時(shí)會(huì)自動(dòng)創(chuàng)建。你可以使用以下命令創(chuàng)建一個(gè)新的數(shù)據(jù)庫:
use mydatabase
添加數(shù)據(jù):添加一條數(shù)據(jù)到一個(gè)集合中:
db.mycollection.insert({ name: "Alice", age: 25 })查詢數(shù)據(jù):查詢符合條件的文檔:
db.mycollection.find({ age: { $gte: 20 } })十、總結(jié)
通過本文的介紹,我們?cè)敿?xì)講解了在 Ubuntu 系統(tǒng)中如何快速安裝和配置 MongoDB 數(shù)據(jù)庫。從添加 MongoDB 倉庫、安裝數(shù)據(jù)庫到配置安全認(rèn)證,再到常見的操作示例,我們希望這篇文章能幫助你順利部署 MongoDB 數(shù)據(jù)庫并開始使用它。
MongoDB 的安裝和配置過程非常簡(jiǎn)單,但為了確保數(shù)據(jù)安全和高效性,合理的配置和使用方法至關(guān)重要。掌握 MongoDB 的基本操作后,你可以進(jìn)一步深入學(xué)習(xí)它的高級(jí)功能,如副本集、分片集群等,以滿足更復(fù)雜的業(yè)務(wù)需求。