常见问题

更新时间:
复制 MD 格式

本文汇总PolarDB MySQL版文档数据库(兼容MongoDB协议)相关的常见问题。

该功能适合哪些业务场景?

适合需要灵活Schema、以文档模型开发的在线业务,例如内容管理、用户画像、物联网、游戏存档等。同时它构建在PolarDB MySQL版之上,同一份数据既能以文档方式进行灵活读写,也能通过标准SQL进行复杂查询与分析,适合希望“一份数据、两种访问方式”打通业务与分析的统一数据平台场景。

使用该功能如何计费?

文档数据库(兼容MongoDB协议)能力本身不额外收费,您只需为底层的PolarDB MySQL版集群资源(计算节点规格、存储、备份等)付费。若在固定规格集群上开启了Serverless弹性能力,则按PCU(PolarDB Capacity Unit)计费。

如何开始使用?

  1. 确认您的集群是否满足适用范围:

    • 内核版本:MySQL 8.0.2,且内核小版本需为8.0.2.2.36及以上。

    • 数据库代理版本:需为2.9.22及以上。

    • 其他限制:Serverless集群暂不支持文档数据库兼容功能。

  2. 满足条件后,您可登录PolarDB控制台,进入目标集群的基本信息页面。

  3. 找到文档数据库兼容配置项并单击开启,系统会自动创建一个默认的文档数据库兼容地址。

  4. 创建文档数据库高权限账号,再使用MongoDB驱动或mongosh连接即可。详细步骤请参见使用说明。

该功能提供高可用保障吗?

提供。计算节点采用一主多只读的高可用架构(企业版最多15个只读节点、标准版最多7个只读节点),主节点负责写入、只读节点分担读取,具备自动故障切换能力,可用性由底层PolarDB MySQL版集群保障。

哪些集群类型不支持该功能?

以下集群类型暂不支持开启文档数据库(兼容MongoDB协议)能力:

  • Serverless集群。

    说明

    支持在固定规格集群上开启Serverless弹性功能,但若您购买的是Serverless集群,则不支持开启文档数据库(兼容MongoDB协议)功能。

客户端如何连接文档数据库(兼容MongoDB协议)地址?

使用标准的MongoDB驱动或mongosh,连接到文档数据库(兼容MongoDB协议)地址。连接串格式为:

mongodb://<username>:<password>@<polardb_endpoint>:<port>
  • <username>:文档数据库账号名,如doc_root或通过createUser创建的普通账号。

  • <password>:账号对应的密码。含特殊字符时需进行UrlEncode编码。

  • <polardb_endpoint>:文档数据库兼容地址域名。

  • <port>:文档数据库兼容地址端口号。

支持哪些驱动和客户端?

支持标准MongoDB Wire Protocol的常见驱动与工具,包括mongosh、Python(pymongo)、Node.js(mongoose)、Go官方MongoDB驱动等。详情请参见驱动和生态工具。

连接层如何实现读写分离与负载均衡?

协议转换在数据库代理层完成,与内核解耦,因此可复用PolarDB的连接池、负载均衡与读写分离能力:写请求路由到主节点,读请求分发到只读节点,从而在协议兼容的同时获得横向扩展的读能力。

支持哪些MongoDB协议与功能?

PolarDB MySQL版通过数据库代理层兼容MongoDB Wire Protocol,支持常用的查询、更新、投影操作符与聚合管道,以及常见的数据库命令。关于操作符与命令的详细支持清单,请参见兼容性与限制。

可以把现有MongoDB数据库迁移到PolarDB吗?

可以。推荐使用阿里云DTS(数据传输服务)进行迁移,支持库表结构迁移、全量迁移与增量迁移。详细步骤请参见数据迁移指南。

迁移后需要注意哪些行为差异?

个别管理类命令、服务端扩展功能以及部分边缘语义可能与原生MongoDB存在差异。建议在正式切换前,在测试环境用真实业务负载进行功能验证,并对照兼容性与限制确认所用操作符与命令是否受支持。

如何扩展性能?

  • 纵向扩展:升级计算节点规格。

  • 横向扩展读能力:增加只读节点(企业版最多15个),配合代理层读写分离分担读负载。

  • 存储扩展:基于云原生分布式存储架构,存储容量可扩展至PB级。

  • 弹性伸缩:在固定规格集群上开启Serverless弹性能力,按PCU进行秒级弹性扩缩。

暂不支持分片能力,可以通过增加只读节点提高读请求性能,通过纵向扩展提高写请求性能。

如何监控和排查性能问题?

使用PolarDB控制台的监控指标、慢日志与SQL洞察等工具定位慢请求。由于文档操作最终转换为SQL执行,可结合PolarDB MySQL版已有的性能诊断能力(如执行计划、SQL统计)进行分析。