php-从MySQL迁移到MongoDB-自动递增字段
作者:互联网
有没有办法保证MongoDB的唯一字段(自动递增整数)?我知道你可以做:
{ $inc : { field : value } }
但是,如果两个查询同时命中怎么办? MySQL将插入一个,然后另一个插入,两个整数都是唯一的,但是我实际上不知道Mongo是否这样做.
需要澄清的是,我知道这不是理想的方法,但这是一个临时实现,直到数据从MySQL迁移完成(用户启动)为止.
解决方法:
$inc是一个atomic modifier,所以可以.确保使用findAndModify,以便查找和修改是单个操作.
问题在于$inc增加了给定文档(行)的值,这意味着您需要使用计数器的集合,并对该计数器应用操作,然后插入实际文档.我想您知道这一点,但为避免未读the docs on auto-incrementing fields的读者感到困惑,有必要指出这一点.
标签:mongodb,mongoid,mysql,php 来源: https://codeday.me/bug/20191202/2084958.html