聯繫我們

課程簡介

模組 1:介紹與 MongoDB 架構(4 小時)

內容:

  • 歷史和 MongoDB 生態系統
  • 典型用例、優缺點
  • 一般架構:實例、進程和配置

練習:

  • 互動探索:使用 Mongo Shell/CLI 連接
  • 創建示例數據庫和集合

模組 2:安裝與初始配置(6 小時)

內容:

  • 硬體和資源需求
  • 在 Linux (deb/rpm)、Windows 和 macOS 上安裝
  • YAML 配置文件 (mongod.conf):dataDir、logDir、bindIp、port
  • 啟動選項和 systemd/服務管理

練習:

  • 在本地虛擬機或 Docker 容器中部署實例
  • 調整配置以適應開發與生產環境
  • 驗證安全遠程連接

模組 3:數據建模與基本操作(5 小時)

內容:

  • BSON 文檔、集合、數據庫
  • 建模:嵌入 vs 引用;數據設計模式
  • 基本索引(此前已介紹)
  • 使用 Mongo Shell 的操作及驅動程序腳本示例

練習:

  • 建模一個用例:庫存或計費系統
  • 實現 CRUD 操作
  • 使用 MongoDB 中的 JSON Schema 進行架構驗證

模組 4:索引與性能(4 小時)

內容:

  • 簡單、複合、多鍵、文本和地理空間索引
  • 使用 explain() 並分析指標
  • 索引對寫入性能和內存的影響

練習:

  • 創建包含測試數據的集合
  • 測試有無索引的查詢,解釋 explain()
  • 根據訪問模式調整索引

模組 5:安全性(5 小時)

內容:

  • 認證機制:SCRAM、LDAP/Kerberos(介紹)
  • 定義用戶和自定義角色
  • 客戶端與服務器之間的 TLS/SSL
  • 靜態加密:密鑰配置
  • 基本審計日誌

練習:

  • 創建具有最小權限的用戶
  • 在本地實例中配置 TLS
  • 驗證未授權訪問並查看審計日誌

模組 6:複製與高可用性(6 小時)

內容:

  • 複製概念:Primary、Secondary、oplog
  • 副本集配置:初始化、成員資格、仲裁
  • 監控狀態和選舉
  • 維護:添加/移除成員、重新分配優先級

練習:

  • 部署三節點副本集(本地或虛擬機)
  • 模擬主節點故障並觀察故障轉移
  • 重建次要節點並恢復副本

模組 7:分片與水平可擴展性(6 小時)

內容:

  • 分片概念:分片鍵、配置服務器、mongos 路由器
  • 分片鍵選擇及相關風險
  • 部署配置服務器、分片及 mongos
  • 重新平衡與 chunk 遷移

練習:

  • 配置簡單的分片叢集
  • 插入大規模數據並觀察分發情況
  • 引入分片鍵更改並理解局限性

模組 8:備份、恢復與災難恢復(4 小時)

內容:

  • 原生工具:mongodump/mongorestore,文件系統快照
  • 副本集和分片叢集中的備份
  • 雲管理器/Ops Manager 的基本備份使用
  • 災難恢復 (DR) 計劃:RTO、RPO

練習:

  • 在測試數據庫上執行備份和恢復
  • 模擬故障並從備份中恢復
  • 為假設案例設計 DR 計劃

模組 9:監控與警報(4 小時)

內容:

  • 工具:mongostat、mongotop、雲管理器/Atlas 監控
  • 與 Prometheus + Grafana 集成(概念和示例)
  • 關鍵指標:CPU、內存、I/O、oplog 大小、延遲
  • 警報:定義閾值和通知

練習:

  • 部署本地或容器化的監控代理
  • 使用示例指標設置基本儀表板
  • 模擬負載並觀察警報

模組 10:維護、升級與最佳實踐(4 小時)

內容:

  • 副本集和分片叢集的升級策略
  • 數據清理、壓縮、完整性檢查
  • 審查日誌和定期審計
  • 自動化常規任務(腳本、cronjob、Ansible、Terraform)
  • 數據保留與歸檔策略

練習:

  • 在受控環境中模擬小幅度和重大升級
  • 為備份和監控創建自動化腳本
  • 制定定期維護檢查清單

總結與後續步驟

最低要求

  • 了解一般資料庫概念和數據結構
  • 熟悉 Linux 命令行使用
  • 具備基本的網絡和系統管理知識

受眾

  • 使用 MongoDB 的資料庫管理員和系統工程師
  • 部署和維護 MongoDB 環境的 DevOps 和基礎設施團隊
  • 對 MongoDB 內部機制和部署最佳實踐感興趣的開發人員
 48 小時

客戶評論 (2)

課程分類