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

Mongo shell创建system.indexes集合报Invalid system namespace错误怎么办

报错原因说明

你操作的错误点如下:

  • 所有以system.开头的集合名是MongoDB的系统保留命名空间,仅用于数据库内部存储元数据,不允许普通用户手动创建、修改这类名称的自定义集合。
  • system.indexes本身就是MongoDB内置的系统集合,专门用来存储当前数据库所有集合的索引元数据,完全不需要用户手动创建,因此你调用db.createCollection("system.indexes")会直接触发命名非法的报错。
解决方案

如果你的需求是为业务集合创建索引,不需要操作system.indexes集合,直接使用索引创建命令即可,MongoDB会自动维护内部的system.indexes元数据。
示例:给users集合的mobile字段创建唯一索引的命令为:

db.users.createIndex({mobile: 1}, {unique: true})

如果你就是需要创建自定义集合,修改集合名称不要使用system.前缀即可,例如:

db.createCollection("custom_indexes")

内容的提问来源于stack exchange,提问作者R. Bogaveev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 08:36:03