溫馨提示×

MongoDB在Ubuntu上的配置技巧

小樊
48
2025-09-13 00:14:32
欄目: 云計算

以下是MongoDB在Ubuntu上的配置技巧,涵蓋安裝、性能優化及安全等方面:

一、基礎安裝與配置

  1. 安裝MongoDB

    • 導入公鑰并添加官方源:
      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 -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list  
      sudo apt update  
      sudo apt install -y mongodb-org  # 安裝最新穩定版  
      
    • 啟動服務并設置開機自啟:
      sudo systemctl enable --now mongod  
      
  2. 核心配置文件(/etc/mongod.conf)

    • 數據存儲路徑:修改 storage.dbPath(默認 /var/lib/mongodb),確保目錄權限正確:
      sudo chown -R mongodb:mongodb /var/lib/mongodb  
      
    • 網絡綁定:設置 net.bindIp0.0.0.0(允許所有IP訪問,生產環境建議限制為內網IP),并指定端口(默認 27017)。
    • 日志配置:通過 systemLog.path 指定日志文件路徑(如 /var/log/mongodb/mongod.log),并開啟日志追加模式 logAppend: true。

二、性能優化技巧

  1. 存儲引擎調優

    • 使用WiredTiger引擎(默認),并通過 storage.wiredTiger.engineConfig.cacheSizeGB 設置緩存大?。ńㄗh為服務器內存的50%-70%)。
    • 禁用透明大頁(THP):執行 echo never > /sys/kernel/mm/transparent_hugepage/enabled,避免內存碎片影響性能。
  2. 索引優化

    • 為高頻查詢字段創建索引:
      db.collection.createIndex({ field: 1 })  // 1為升序,-1為降序  
      
    • 避免過度索引,定期使用 db.collection.reIndex() 重建索引以優化查詢效率。
  3. 分片與復制集(高可用場景)

    • 分片:通過 sh.enableSharding("數據庫名") 啟用分片,將數據分散到多個節點。
    • 副本集:配置 replication.replSetName 并添加多個節點,實現數據冗余和故障自動切換。

三、安全加固

  1. 啟用身份驗證

    • 在配置文件中添加 security.authorization: enabled,并重啟服務。
    • 創建管理員用戶:
      use admin  
      db.createUser({ user: "admin", pwd: "密碼", roles: ["root"] })  
      
  2. 網絡與防火墻

    • 限制MongoDB端口(默認27017)僅允許內網訪問,通過 ufwiptables 配置防火墻規則。
    • 禁用不必要的服務(如防火墻、SELinux),減少系統負載。

四、監控與維護

  • 自帶工具:使用 mongostat(實時監控)和 mongotop(按集合統計磁盤I/O)查看性能狀態。
  • 第三方工具:部署Prometheus+Grafana實現可視化監控,或使用MongoDB Atlas云監控。
  • 定期備份:通過 mongodump 導出數據,存儲到異地服務器或云存儲,確保數據安全。

五、注意事項

  • 生產環境建議使用SSD存儲,避免使用EXT4文件系統(優先XFS)。
  • 配置修改后需重啟服務生效:sudo systemctl restart mongod。
  • 參考官方文檔驗證配置參數的兼容性:MongoDB官方配置指南。

以上技巧綜合自搜索資源,可根據實際場景調整參數。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女