You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Cosmos DB无服务器账户集合配额超限问题求助

解决Azure Cosmos DB无服务器账户集合配额超限问题
  • 确认实际集合总计数
    无服务器账户的100个集合配额是账户级的,所有数据库的集合(包括系统集合)加起来不能超过这个数。直接用MongoDB命令遍历所有数据库统计总数:

    // 遍历所有数据库并统计集合数量
    var totalCollections = 0;
    db.adminCommand('listDatabases').databases.forEach(function(db) {
      var collCount = db.getSiblingDB(db.name).getCollectionNames().length;
      totalCollections += collCount;
      print(db.name + ": " + collCount + " collections");
    });
    print("Total collections across all databases: " + totalCollections);
    

    这个命令能准确统计当前账户下的所有集合,避免仅通过Azure门户查看的遗漏。

  • 清理软删除的集合
    Azure Cosmos DB默认开启软删除,删除的集合会保留30天,这部分资源仍会占用配额。

    • 门户操作:进入Azure Cosmos DB账户的「数据资源管理器」,切换到「已删除的集合」标签,找到不需要的集合右键选择「永久删除」。
    • CLI操作:使用命令永久删除指定软删除集合:
      az cosmosdb mongodb collection delete-permanent --account-name <你的账户名> --resource-group <资源组名> --database-name <数据库名> --name <集合名>
      
  • 等待配额计数同步
    删除资源后,系统的配额计数不会实时更新,尤其是无服务器账户,通常需要等待1-2小时让后台同步数据。如果刚完成删除操作,先等待一段时间再尝试创建新集合。

  • 检查并清理系统/隐藏集合
    部分MongoDB驱动、工具或业务逻辑会自动创建system.*开头的系统集合,这些也会占用配额。用db.getCollectionNames()命令查看所有集合,确认是否有不需要的系统集合可以删除。

  • 申请配额提升(长期需求)
    如果业务确实需要超过100个集合,可以在Azure门户提交支持请求,说明具体业务场景,申请提升无服务器账户的集合配额。注意无服务器账户的配额提升有一定限制,需要合理说明需求。

内容的提问来源于stack exchange,提问作者pigiax

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 04:42:37