mongodb-4.4.10版本的索引管理:创建、删除

索引主要用于排序和检索

索引属性表

属性名 类型 说明
background boolean 是否后台构建索引,在生产环境中,如果数据量太大,构建索引可能会消耗很长时间,为了不影响业务,可以加上此参数,后台运行同时还会为其他读写操作让路
unique boolean 是否为唯一索引
name string 索引名字
sparse boolean 是否为稀疏索引,索引仅引用具有指定字段的文档。

 

创建索引

单键唯一索引:db.users.createIndex({username :1},{unique:true});

单键唯一稀疏索引:db.users. createIndex({username :1},{unique:true,sparse:true});

复合唯一稀疏索引:db.users. createIndex({username:1,age:-1},{unique:true,sparse:true});

创建哈希索引并后台运行:db.users. createIndex({username :'hashed'},{background:true});

多键索引:在数组的属性上建立索引,例如:db.users. createIndex({favorites.city:1});针对这个数组的任意值的查询都会定位到这个文档,既多个索引入口或者键值引用同一个文档

 

删除索引

根据索引名字删除某一个指定索引:db.users.dropIndex("username_1");

删除某集合上所有索引:db.users.dropIndexs();

重建某集合上所有索引:db.users.reIndex();

查询集合上所有索引:db.users.getIndexes();

 

 

end.

上一篇:Google Guice的使用方式


下一篇:Python数据分析(一)—— Pandas快速入门