感謝您提交詢問!我們的一位團隊成員將在短時間內與您聯繫。
感謝您提交預訂!我們的一位團隊成員將在短時間內與您聯繫。
課程簡介
模組 1:簡介與 MongoDB 架構 (4 小時)
內容:
- MongoDB 的歷史與生態系統
- 典型使用案例、優缺點
- 一般架構:執行個體、程序與配置
練習:
- 互動式探索:使用 Mongo Shell/CLI 連接
- 建立範例資料庫與集合
模組 2:安裝與初步配置 (6 小時)
內容:
- 硬體與資源需求
- 在 Linux (deb/rpm)、Windows 及 macOS 上的安裝
- YAML 配置檔 (mongod.conf):dataDir, logDir, bindIp, port
- 啟動選項與 systemd/service 管理
練習:
- 在本地虛擬機器或 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
- 複寫集配置:初始化、成員資格、仲裁
- 監控狀態與選舉
- 維護:新增/移除成員、重新分配優先順序
練習:
- 部署三節點複寫集(本地或虛擬機器)
- 模擬 Primary 故障並觀察故障轉移
- 重建 Secondary 節點並復原複寫
模組 7:分片與水平擴展 (6 小時)
內容:
- 分片概念:shard key, config servers, mongos router
- Shard key 選擇與相關風險
- 部署 config servers, shards, 及 mongos
- 再平衡與區塊遷移
練習:
- 配置簡單的分片叢集
- 插入大規模資料並觀察分佈情況
- 引入 shard key 變更並了解其限制
模組 8:備份、復原與災難復原 (4 小時)
內容:
- 原生工具:mongodump/mongorestore, 檔案系統快照
- 複寫集與分片叢集的備份
- 使用 Cloud Manager/Ops Manager 進行備份的基本操作
- 災難復原 (DR) 規劃:RTO, RPO
練習:
- 在測試資料庫上執行備份與復原
- 模擬故障並從備份中復原
- 為假設案例設計 DR 計畫
模組 9:監控與警示 (4 小時)
內容:
- 工具:mongostat, mongotop, Cloud Manager/Atlas Monitoring
- 與 Prometheus + Grafana 整合(概念與範例)
- 關鍵指標:CPU, 記憶體, I/O, oplog 大小, 延遲
- 警示:定義閾值與通知
練習:
- 部署本地或基於容器的監控代理程式
- 使用範例指標設置基本儀表板
- 模擬負載並觀察警示
模組 10:維護、升級與最佳實務 (4 小時)
內容:
- 複寫集與分片叢集的升級策略
- 資料清理、壓縮、完整性檢查
- 檢視記錄與定期稽核
- 自動化常規任務(腳本, cronjobs, Ansible, Terraform)
- 資料保留與存檔政策
練習:
- 在受控環境中模擬次要與主要升級
- 建立用於備份與監控的自動化腳本
- 制定定期維護檢查清單
摘要與後續步驟
最低要求
- 具備一般資料庫概念與資料結構的理解。
- 熟悉 Linux 指令列使用。
- 具備基本的網路與系統管理知識。
受眾
- 處理 MongoDB 的資料庫管理員與系統工程師。
- 部署與維護 MongoDB 環境的 DevOps 與基礎架構團隊。
- 對 MongoDB 內部機制與部署最佳實務感興趣的開發人員。
48 小時
客戶評論 (2)
講解和說話的節奏。
Marko Skokovic - PWO by Lottomatica Serbia
課程 - MongoDB for Administrators
機器翻譯
Jose先生非常棒,他詳細解釋了每一個命令的細節。我們非常感謝他花時間與我們分享他的知識,這充分表明他是這個領域的專家。
Almer Laureta - Asialink Finance Corporation
課程 - MongoDB for Developers
機器翻譯