Expire Data from Collections by Setting TTL

重复的内容不翻译了。

Procedures

Expire Docuemnts after a Specified Number of Seconds

在BSON date类型或BSON date类型数组上,创建索引时,指定expreAfterSeconds属性一个非0的值,文档将在经过指定的秒数后过期。

例如,下面的示例中,将在集合log_events的createAt字段上创建索引,并指定了expireAfterSeconds的值为3600,数据将在createAt字段表示的时间之后3600秒过期:

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

往集合中添加文档,并指定createAt的值为当前时间:

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

MongoDB将在3600秒后,自动改文档。

Expire Documents at a Specific Clock Time

在创建一个在指定时间过期的TTL索引,需要在一个Date类型或Date类型数组的字段上创建索引,并指定expireAfterSeconds为0。如果该时间是过去的时间,则MongoDB判定该文档已经过期。

For Example:

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

results matching ""

    No results matching ""