托管文档数据库对照
MongoDB 兼容的托管服务在三家云上名称不同,但核心能力一致:提供副本集或分片集群,自带备份与监控,通过标准 mongodb:// 连接串接入。选型与迁移时要重点看三件事:架构形态(副本集还是分片)、版本号与客户端驱动兼容性、备份与恢复能力(是否支持按时间点恢复)。名称只是入口,这三个决定了迁移工作量。
术语对照
| 概念 | 阿里云 | 腾讯云 | 华为云 |
|---|---|---|---|
| 产品名 | 云数据库 MongoDB 版 | 云数据库 MongoDB | 文档数据库服务 DDS |
| 架构形态 | 副本集与分片集群 | 副本集与分片集群 | 副本集与集群 |
| 连接方式 | mongodb:// 副本集或多节点地址 | mongodb:// 连接串 | mongodb:// 连接串 |
| 版本 | 按控制台可选版本 | 按控制台可选版本 | 按控制台可选版本 |
| 备份 | 自动备份与按时间点恢复 | 自动备份 | 自动备份 |
| 安全 | 白名单、账号与密码、可加密 | 白名单与账号体系 | VPC、安全组与账号体系 |
典型使用场景
- 自建 MongoDB 上云,从副本集迁移到托管副本集以降低运维负担
- 文档型业务扩容:数据量增长后从副本集升级为分片集群
- 跨云迁移:需要评估两端版本差异与索引兼容性
- 读写分离:利用从节点承接报表类只读查询
- 灾备建设:用托管实例的备份能力替代自建脚本备份
- 合规改造:把访问控制收敛到云账号体系与 VPC 内网
连接串结构说明
连接串结构说明
# 副本集连接串的典型结构(主机、端口与参数以控制台实际值为准)
# mongodb://<用户>:<口令>@<主机1>:<端口>,<主机2>:<端口>/<库名>?replicaSet=<集合名>&authSource=admin
# ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^
# 说明一:副本集地址写多个节点,驱动据此做故障切换
# 说明二:authSource 指定认证库,账号建在 admin 库时通常填 admin,填错会一直认证失败
# 说明三:口令中含特殊字符要按 URL 编码后再放入连接串
# 说明四:迁移后核对版本与驱动兼容性,老驱动连新版本可能协商失败迁移前确认目标版本与客户端驱动兼容:老版本驱动连接新版本实例时可能因特性协商失败而拒绝连接,升级驱动往往比降级数据库更省事。
分片集群的迁移复杂度显著高于副本集:分片键设计、均衡器状态与 chunk 分布都会影响迁移与后续性能,迁移前先确认目标侧是否需要重新分片。