文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

mongodb 索引日常维护操作

2024-04-02 19:55

关注

创建索引:
db.t_order_detail.createIndex({"order_id":1})
复合索引:
db.t_order_detail.createIndex({"order_id":1,"detail_id":1,"batch_id":1})
在后台创建索引:
db.t_order_detail.createIndex({order_id:1},{background:1})
创建TTL索引:
a.经过指定的时间间隔后,集合失效:
db.t_order_detail.createIndex( { "createTime": 1 }, { expireAfterSeconds: 60*60 } ) -----过期时间(单位秒) 使用getIndexes() 查看
修改TTL索引的expireAfterSeconds属性值:
db.runCommand( { collMod: "t_order_detail",index: { keyPattern: { createTime: 1 },expireAfterSeconds: 7200}})
b.指定时间点过期,集合失效:
db.t_order_detail.createIndex({"expireAt": 1},{expireAfterSeconds:0})
db.t_order_detail.insert({
"createdAt": new Date('Oct 21, 2018 21:30:00'),
"log_Event": 1,
"log_Message": "Success!"
})
查看索引:
db.t_order_detail.getIndexes()
查看索引键:
db.t_order_detail.getIndexKeys()
查看集合索引总大小:
db.t_order_detail.totalIndexSize()
查看集合各索引的详细信息:
db.t_order_detail.getIndexSpecs()
删除索引:
db.t_order_detail.dropIndex("index_name")
删除所有索引
db.t_order_detail.dropIndexes()方法用于删除全部的索引
索引重建:
db.t_order_detail.reIndex({"order_id":1})

备注:
在前台创建索引期间会锁定集合,会导致其它操作无法进行数据读写,在后台创建索引,会定期释放写锁,从而保证其它操作的运行,但是后台操作会在耗时更长,尤其是在频繁进行写入的集合上。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯