Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb expireAfterSeconds在mongo中不起作用_Mongodb_Mongodb Indexes - Fatal编程技术网

Mongodb expireAfterSeconds在mongo中不起作用

Mongodb expireAfterSeconds在mongo中不起作用,mongodb,mongodb-indexes,Mongodb,Mongodb Indexes,使用Mongo3.2 我将expireAfterSeconds设置为3天,因为我们不需要超过3天的数据,但是我可以在数据库中看到,我们仍然有一个月前的数据。配置有问题 从db.runs.getIndexes收集的信息 { 五:一,, 关键:{ _身份证号码:1 }, 姓名:_id_, ns:guardian.runs }, { 五:一,, 关键:{ 创建:1 }, 名称:created_1, ns:guardian.runs, 背景:对,, expireAfterSeconds:259200 }

使用Mongo3.2

我将expireAfterSeconds设置为3天,因为我们不需要超过3天的数据,但是我可以在数据库中看到,我们仍然有一个月前的数据。配置有问题

从db.runs.getIndexes收集的信息

{ 五:一,, 关键:{ _身份证号码:1 }, 姓名:_id_, ns:guardian.runs }, { 五:一,, 关键:{ 创建:1 }, 名称:created_1, ns:guardian.runs, 背景:对,, expireAfterSeconds:259200 } 应删除的条目:

[ { _id:578c8aa25a3f72387073f2f0, 作业id:573f62bf0e44a2796b6e9de1, 所有者:空, 开始时间:2016-07-18T07:52:02.447Z, 结束时间:2016-07-18T07:52:14.119Z, 状态:成功, 结果:{ 成功:[], 失败:[], 警告:[] } } ]
您的文档没有引用的已创建字段


您需要在创建每个文档时向文档中添加一个已创建的字段,或者将TTL索引更改为引用“开始”或“结束”,而不是假设这些实际上是数据库中的日期值,而不仅仅是字符串。

您的文档没有引用的已创建字段


您需要在文档中添加一个已创建的字段,并在创建每个文档时显示该字段,或者将您的TTL索引更改为引用“开始”或“结束”,前提是这些实际上是数据库中的日期值,而不仅仅是字符串。

添加了一个条目您的文档没有TTL索引引用的“已创建”字段。因此,如果我将“已创建”更改为“结束”,它应该可以工作?是,只要End是实际的日期数据类型而不仅仅是字符串。添加了一个Entries您的文档没有TTL索引引用的created字段。因此,如果我将created更改为ended,它应该可以工作?是的,只要ended是实际的日期数据类型而不仅仅是字符串。