在MongoDB中,可以通过设置TTL(Time to Live)索引来自动删除过期数据。TTL索引会在指定的时间内自动删除文档。
以下是通过TTL索引自动删除过期数据的步骤:
db.collection.createIndex( { "expireAt": 1 }, { expireAfterSeconds: 0 } )
其中,expireAt
是存储文档过期时间的字段,expireAfterSeconds
是指定文档过期时间的秒数。设置为0表示文档会立即过期。
db.collection.insertOne( { "expireAt": new Date(Date.now() + 3600 * 1000) } )
在插入文档时,可以通过设置expireAt
字段来指定文档的过期时间。在上面的例子中,文档在当前时间的基础上加上1小时的时间,表示文档会在1小时后过期。
通过以上步骤,可以配置MongoDB自动删除过期数据。