【Mongo】创建索引
来源:互联网 发布:网络趣事排行 编辑:程序博客网 时间:2024/05/16 05:00
一、【创建索引】
db.COLLECTION_NAME.ensureIndex({KEY:1},{background: true})
*可选参数列表如下:
1、查看某个库上的所有索引
db.DB_NAME.index.find()
2、查看某个表上的所有索引
db.COLLECTION_NAME.getIndexes()
三、【重建索引】
db. COLLECTION_NAME.reIndex()
四、【删除索引】
1、删除表上的某个索引
db. COLLECTION_NAME.dropIndex({a:1})
2、删除表上的所有索引
db. COLLECTION_NAME.dropIndexes()
五、【在副本集上创建索引】
后台创建索引操作在一个副本集的从节点(secondary)上会变成前台操作,这时创建索引的操作会
阻塞从节点上的所有的复制和读操作。
从节点会在主节点完成创建索引的操作后开始创建索引,在分片集群环境(sharded cluster)中,
mongos会向每个分片上的副本集环境的主节点发送ensureIndex(),然后在主节点完成创建索引后
复制到从节点上。
为了在副本集环境中将创建索引的影响降低到最小,使用以下方法在从节点上创建索引:
1、在一个从节点上停止mongod进程,使用另一个端口号不采用--replSet选项重启mongod进程,这
个mongod实例现在已"独立"(standalone)模式运行;
2、在这个mongod实例上创建新索引或者重建索引;
3、采用--replSet选项重启mongod实例。允许复制操作catch up这个成员;
4、在其它的从节点上重复这个操作;
5、在这个集(set)上的主节点上运行rs.stepDown(),然后在之前的主节点上重复这个过程。
六、【索引中的升序键和降序键】
对于单个键的索引,键的顺序没有关系。但是对于符合索引,键的升、降顺序有很大影响。
比如说一个表包含用户名(username)和该用户发表文章的时间(time),如果你需要经常查询某用户最
新发表的文章,你应该创建这样的索引:
db.collection.ensureIndex({"username":1,"time":-1})
七、【索引的限制】
1、一个表上的索引不能超过64个;
2、索引的键不能超过1024bytes();
3、索引的名字(包含命名空间)必须少于128个字符;
- 【Mongo】创建索引
- mongo 停止创建索引 --noIndexBuildRetry
- mongo索引创建和索引分析
- mongo索引
- mongo 索引
- mongo索引
- Mongo索引
- mongo索引
- mongo索引
- Mongo索引
- mongo索引sort排序字段复合索引升序和降序索引创建规则
- mongo DB空间索引
- mongo 索引优化
- mongo索引小结
- 神奇的mongo:索引
- mongo索引小结
- Mongo地理位置索引原理
- mongo索引小结
- 高得地图js api,你地理编码的异步延时
- 仿支付宝记账本效果(二)
- LeetCode Maximum subarray,最大子串问题
- 十款免费移动应用测试框架推荐
- 字节序
- 【Mongo】创建索引
- 下载出错Error:Flash Download Failed-"Cortex-M3"
- mysql之MyISAM和InnoDB
- 在Xshell上使用XFTP上传文件到Linux服务器
- tail -f 、tailf 和 tail -F 的区别
- Ecshop在模板中$smarty session cookie等调用$smarty.session $smarty.cookie
- servlet学习
- 浅谈crash
- android 虚拟摇杆绘制