我正在尝试恢复已更改的MongoDB集合上的数据。
I.e. - property: false -> true
,我没有整个集合的备份。
有没有办法知道$set
操作前的最后一个属性值是什么?喜欢对数据的操作历史记录?
它也可以基于时间戳。
示例:集合名称Users
更改前:
{name:"xxxx1", address:"yyyy1", test:false}
{name:"xxxx2", address:"yyyy2", test:true}
{name:"xxxx3", address:"yyyy3", test:false}
{name:"xxxx4", address:"yyyy4", test:true}
更改后:
{name:"xxxx1", address:"yyyy1", test:true}
{name:"xxxx2", address:"yyyy2", test:true}
{name:"xxxx3", address:"yyyy3", test:true}
{name:"xxxx4", address:"yyyy4", test:true}
我想知道所有具有价值test :false
的实体:
{name:"xxxx1", address:"yyyy1", test:false}
{name:"xxxx3", address:"yyyy3", test:false}
可能吗?
除非在此更新操作之前在集合上安装了某些版本控制插件,否则无法提取更改。但是,您可能想要查看oplog,这是一个上限集合,用于存储对MongoDB数据库的逻辑写入的有序历史记录。