zoukankan      html  css  js  c++  java
  • mongodb 设置自动删除过期数据

    MongoDB 2.2 引入一个新特性–TTL 集合,TTL集合支持失效时间设置,或者在某个特定时间,
    集合自动清除超时文档,者用来保存一个诸如session会话信息的时候非常有用。

    如果想使用TTL集合,用用到 expireAfterSeconds 选项

    mongo
    官网使用文档设置方法:

    Expire Documents after a Specified Number of Seconds
    首先创建索引,设置过期时间

    db.log_events.createIndex( { "createdAt": 1 }, { expireAfterSeconds: 3600 } )

    然后存储数据入库

    db.log_events.insert( {
       "createdAt": new Date(),
       "logEvent": 2,
       "logMessage": "Success!"
    } )

    mongodb 会在 createdAt 数值大于 expireAfterSeconds 指定的值。

    Expire Documents at a Specific Clock Time
    与上面的设置类似
    首先建立索引,设置 expireAfterSeconds 为 0

    db.log_events.createIndex( { "expireAt": 1 }, { expireAfterSeconds: 0 } )

    然后存储数据

    db.log_events.insert( {
       "expireAt": new Date('July 22, 2013 14:00:00'),
       "logEvent": 2,
       "logMessage": "Success!"
    } )

    expireAt 的值为特定的时间值,等时间到达expireAt的值时,这个文档就 失效了。

  • 相关阅读:
    自动化部署功
    docker 安装
    批量操作
    centos7 内核升级
    centos 6.5 升级 内核
    如何进行再linux 下查看 java程序的堆栈信息
    binlog 日志恢复以及操作
    java 中 Integer 比较 问题
    docker 使用
    soucetree 安装
  • 原文地址:https://www.cnblogs.com/jiangqw/p/12174746.html
Copyright © 2011-2022 走看看