# Linux系統如何安裝MongoDB
MongoDB作為當前最流行的NoSQL數據庫之一,以其靈活的文檔存儲模型和高性能特性深受開發者喜愛。本文將詳細介紹在Linux系統上安裝MongoDB的完整流程,涵蓋社區版安裝、配置優化及基礎管理操作。
## 一、安裝前的準備工作
### 1.1 系統環境檢查
在開始安裝前,請確認您的Linux系統信息:
```bash
# 查看系統版本
lsb_release -a
# 或
cat /etc/os-release
# 檢查CPU架構(MongoDB支持x86_64和ARM64)
uname -m
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
以Ubuntu/Debian為例:
# 導入GPG密鑰
sudo apt-get install gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
# 添加倉庫配置
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
對于RHEL/CentOS:
# 創建repo文件
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install -y mongodb-org
# RHEL/CentOS
sudo yum install -y mongodb-org
/etc/mongod.conf
/var/lib/mongo
/var/log/mongodb/mongod.log
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-6.0.5.tgz
tar -zxvf mongodb-linux-*.tgz
sudo mv mongodb-*/ /usr/local/mongodb
echo 'export PATH=/usr/local/mongodb/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
sudo mkdir -p /data/db
sudo chown `whoami` /data/db
# 啟動服務
sudo systemctl start mongod
# 設置開機自啟
sudo systemctl enable mongod
# 檢查狀態
sudo systemctl status mongod
編輯配置文件/etc/mongod.conf
:
security:
authorization: enabled
創建管理員用戶:
use admin
db.createUser({
user: "admin",
pwd: "securePassword123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
net:
port: 27017
bindIp: 127.0.0.1 # 生產環境應限制訪問IP
根據服務器內存調整WiredTiger緩存(建議為物理內存的50-70%):
storage:
wiredTiger:
engineConfig:
cacheSizeGB: 4
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
logRotate: reopen
# 增加文件描述符限制
echo "* soft nofile 64000" | sudo tee -a /etc/security/limits.conf
echo "* hard nofile 64000" | sudo tee -a /etc/security/limits.conf
# 禁用透明大頁
echo "never" | sudo tee /sys/kernel/mm/transparent_hugepage/enabled
mongo --host 127.0.0.1 -u admin -p securePassword123 --authenticationDatabase admin
// 創建數據庫
use testdb
// 插入文檔
db.users.insertOne({
name: "John Doe",
age: 30,
email: "john@example.com"
})
// 查詢文檔
db.users.find().pretty()
// 創建索引
db.users.createIndex({ email: 1 }, { unique: true })
# 檢查端口占用
sudo netstat -tulnp | grep 27017
# 修改配置文件中的端口號
net:
port: 27018
// 在mongo shell中查看存儲統計
db.stats()
// 清理oplog(副本集環境)
use local
db.oplog.rs.drop()
檢查:
1. /etc/mongod.conf
中的security.authorization
設置
2. 用戶是否創建在正確的認證數據庫
3. 密碼中的特殊字符是否需要轉義
# 停止服務
sudo systemctl stop mongod
# 備份數據
mongodump --out /backup/mongodb-$(date +%F)
# 安裝新版本包
sudo apt-get install mongodb-org=6.0.5
sudo systemctl stop mongod
sudo apt-get purge mongodb-org*
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb
本文詳細介紹了Linux系統下MongoDB的安裝與基礎配置流程。建議生產環境部署時: 1. 配置副本集保證高可用 2. 啟用定期備份策略 3. 監控數據庫性能指標 4. 定期應用安全補丁
更多高級功能可參考官方文檔。 “`
注:實際使用時請根據具體Linux發行版和MongoDB版本調整命令參數。生產環境部署建議進行全面的安全配置和性能測試。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。