Course Code: mongodbao
Duration: 48 hours
Prerequisites:
  • 了解通用数据库概念和数据结构
  • 熟悉Linux命令行使用
  • 具备网络和系统管理的基础知识

受众

  • 与MongoDB合作的Database管理员和系统工程师
  • 部署和维护MongoDB环境的DevOps和基础设施团队
  • 对MongoDB内部机制和部署最佳实践感兴趣的开发人员
Overview:

MongoDB 是一种流行的 NoSQL 数据库,以其灵活性、可扩展性和分布式架构而闻名,非常适合现代应用程序后端、数据聚合和实时分析。

本次由讲师指导的培训(线上或线下)面向中级到高级技术人员,旨在帮助他们获得有关 MongoDB 操作的实用、深入知识,涵盖从部署到高可用性、安全性和灾难恢复的各个方面。

培训结束后,参与者将能够:

  • 在各种环境中安装、配置和维护 MongoDB。
  • 为性能和可扩展性适当建模数据。
  • 配置安全访问并定义备份和恢复程序。
  • 设置高可用性集群并监控性能指标。
  • 处理实际管理任务,如升级和自动化。

课程形式

  • 互动式讲座和讨论。
  • 大量练习和实践。
  • 在实时实验环境中进行动手操作。

课程定制选项

  • 如需为本课程定制培训,请联系我们进行安排。
Course Outline:

模块 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 文档、集合、数据库
  • 建模:嵌入与引用;数据设计模式
  • 基本索引(之前介绍过)
  • 使用 Mongo Shell 的操作与驱动程序脚本示例

实践:

  • 建模用例:库存或计费系统
  • 实现 CRUD 操作
  • 使用 JSON Schema 在 MongoDB 中进行模式验证

模块 4: 索引与性能 (4小时)

内容:

  • 简单、复合、多键、文本与地理空间索引
  • 使用 explain() 与分析指标
  • 索引对写入性能与内存的影响

实践:

  • 创建包含测试数据的集合
  • 测试有索引与无索引的查询;解释 explain()
  • 根据访问模式调整索引

模块 5: 安全性 (5小时)

内容:

  • 认证机制:SCRAM、LDAP/Kerberos(简介)
  • 定义用户与自定义角色
  • 客户端与服务器之间的 TLS/SSL
  • 静态加密:密钥配置
  • 基本审计日志

实践:

  • 创建具有最小权限的用户
  • 在本地实例中配置 TLS
  • 验证未授权访问并查看审计日志

模块 6: 复制与高可用性 (6小时)

内容:

  • 复制概念:主节点、从节点、oplog
  • 副本集配置:初始化、成员资格、仲裁
  • 监控状态与选举
  • 维护:添加/移除成员、重新分配优先级

实践:

  • 部署三节点副本集(本地或虚拟机)
  • 模拟主节点故障并观察故障转移
  • 重建从节点并恢复副本

模块 7: 分片与水平扩展 (6小时)

内容:

  • 分片概念:分片键、配置服务器、mongos 路由器
  • 分片键选择与相关风险
  • 部署配置服务器、分片与 mongos
  • 重新平衡与块迁移

实践:

  • 配置简单的分片集群
  • 插入大规模数据并观察分布
  • 引入分片键更改并理解限制

模块 8: 备份、恢复与灾难恢复 (4小时)

内容:

  • 原生工具:mongodump/mongorestore、文件系统快照
  • 副本集与分片集群中的备份
  • 使用 Cloud Manager/Ops Manager 进行备份的基本操作
  • 灾难恢复 (DR) 规划:RTO、RPO

实践:

  • 在测试数据库上执行备份与恢复
  • 模拟故障并从备份中恢复
  • 为假设案例设计灾难恢复计划

模块 9: 监控与告警 (4小时)

内容:

  • 工具:mongostat、mongotop、Cloud Manager/Atlas Monitoring
  • 与 Prometheus + Grafana 的集成(概念与示例)
  • 关键指标:CPU、内存、I/O、oplog 大小、延迟
  • 告警:定义阈值与通知

实践:

  • 部署本地或基于容器的监控代理
  • 使用示例指标设置基本仪表板
  • 模拟负载并观察告警

模块 10: 维护、升级与最佳实践 (4小时)

内容:

  • 副本集与分片集群的升级策略
  • 数据清理、压缩、完整性检查
  • 审查日志与定期审计
  • 自动化常规任务(脚本、cronjobs、Ansible、Terraform)
  • 数据保留与归档策略

实践:

  • 在受控环境中模拟次要与主要升级
  • 创建备份与监控的自动化脚本
  • 制定定期维护检查表

总结与后续步骤

Sites Published:

United Arab Emirates - MongoDB Technical Administration and Operations

Qatar - MongoDB Technical Administration and Operations

Egypt - MongoDB Technical Administration and Operations

Saudi Arabia - MongoDB Technical Administration and Operations

South Africa - MongoDB Technical Administration and Operations

Brasil - MongoDB Technical Administration and Operations

Canada - MongoDB Technical Administration and Operations

中国 - MongoDB Technical Administration and Operations

香港 - MongoDB Technical Administration and Operations

澳門 - MongoDB Technical Administration and Operations

台灣 - MongoDB Technical Administration and Operations

USA - MongoDB Technical Administration and Operations

Österreich - MongoDB Technical Administration and Operations

Schweiz - MongoDB Technical Administration and Operations

Deutschland - MongoDB Technical Administration and Operations

Czech Republic - MongoDB Technical Administration and Operations

Denmark - MongoDB Technical Administration and Operations

Estonia - MongoDB Technical Administration and Operations

Finland - MongoDB Technical Administration and Operations

Greece - MongoDB Technical Administration and Operations

Magyarország - MongoDB Technical Administration and Operations

Ireland - MongoDB Technical Administration and Operations

Luxembourg - MongoDB Technical Administration and Operations

Latvia - MongoDB Technical Administration and Operations

España - MongoDB Technical Administration and Operations

Italia - MongoDB Technical Administration and Operations

Lithuania - MongoDB Technical Administration and Operations

Nederland - MongoDB Technical Administration and Operations

Norway - MongoDB Technical Administration and Operations

Portugal - MongoDB Technical Administration and Operations

România - MongoDB Technical Administration and Operations

Sverige - MongoDB Technical Administration and Operations

Türkiye - MongoDB Technical Administration and Operations

Malta - MongoDB Technical Administration and Operations

Belgique - MongoDB Technical Administration and Operations

France - MongoDB Technical Administration and Operations

日本 - MongoDB Technical Administration and Operations

Australia - MongoDB Technical Administration and Operations

Malaysia - MongoDB Technical Administration and Operations

New Zealand - MongoDB Technical Administration and Operations

Philippines - MongoDB Technical Administration and Operations

Singapore - MongoDB Technical Administration and Operations

Thailand - MongoDB Technical Administration and Operations

Vietnam - MongoDB Technical Administration and Operations

India - MongoDB Technical Administration and Operations

Argentina - MongoDB Technical Administration and Operations

Chile - MongoDB Technical Administration and Operations

Costa Rica - MongoDB Technical Administration and Operations

Ecuador - MongoDB Technical Administration and Operations

Guatemala - MongoDB Technical Administration and Operations

Colombia - MongoDB Technical Administration and Operations

México - MongoDB Technical Administration and Operations

Panama - MongoDB Technical Administration and Operations

Peru - MongoDB Technical Administration and Operations

Uruguay - MongoDB Technical Administration and Operations

Venezuela - MongoDB Technical Administration and Operations

Polska - MongoDB Technical Administration and Operations

United Kingdom - MongoDB Technical Administration and Operations

South Korea - MongoDB Technical Administration and Operations

Pakistan - MongoDB Technical Administration and Operations

Sri Lanka - MongoDB Technical Administration and Operations

Bulgaria - MongoDB Technical Administration and Operations

Bolivia - MongoDB Technical Administration and Operations

Indonesia - MongoDB Technical Administration and Operations

Kazakhstan - MongoDB Technical Administration and Operations

Moldova - MongoDB Technical Administration and Operations

Morocco - MongoDB Technical Administration and Operations

Tunisia - MongoDB Technical Administration and Operations

Kuwait - MongoDB Technical Administration and Operations

Oman - MongoDB Technical Administration and Operations

Slovakia - MongoDB Technical Administration and Operations

Kenya - MongoDB Technical Administration and Operations

Nigeria - MongoDB Technical Administration and Operations

Botswana - MongoDB Technical Administration and Operations

Slovenia - MongoDB Technical Administration and Operations

Croatia - MongoDB Technical Administration and Operations

Serbia - MongoDB Technical Administration and Operations

Bhutan - MongoDB Technical Administration and Operations

Nepal - MongoDB Technical Administration and Operations

Uzbekistan - MongoDB Technical Administration and Operations