MongoDB中的TTL索引:自动过期数据的深入解析与使用方式
// 连接到MongoDB数据库
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'exampleDb';
MongoClient.connect(url, function(err, client) {
if(err) throw err;
console.log("连接成功");
const db = client.db(dbName);
// 创建一个集合并添加TTL索引
const collection = db.collection('documents');
collection.createIndex("expireAt", { expireAfterSeconds: 3600 }, function(err, results) {
if(err) throw err;
console.log("TTL索引创建成功");
// 插入一个文档,并设置一个过期时间
const myDocument = {name: "test", expireAt: new Date()};
collection.insertOne(myDocument, function(err, result) {
if(err) throw err;
console.log("文档插入成功");
// 关闭数据库连接
client.close();
});
});
});
这段代码演示了如何在MongoDB中创建一个TTL索引并插入一个具有过期时间的文档。它首先连接到MongoDB数据库,然后创建一个名为documents
的集合并在其expireAt
字段上设置一个TTL索引,过期时间设置为3600秒。随后,它插入一个新文档并设置当前时间作为过期时间,然后关闭数据库连接。
评论已关闭