mysql获取记录的插入时间,如何查看某一条记录插入到主库的时间与插入到插入到从库的时间差...

业务

用户抽奖

先查询该日已抽奖次数--drawCount 如

select count(*) from draw_log where user_id = 1 and draw_date = current_date

如果drawCount<3 表示抽奖次数未满 继续抽奖

如果drawCount>=3 表示抽奖次数已满 直接返回 提示该日抽奖次数已满

问题

但发现实际有些用户超抽了 最多的一天甚至抽了65次

原因

并发抽奖

但查看数据库记录 可以排除是并发的情况 每次抽奖之间的间隔至少为6秒

+-----------------+

| diff |

+-----------------+

| 00:00:07.000000 |

| 00:00:08.000000 |

| 00:00:12.000000 |

| 00:00:12.000000 |

| 00:00:07.000000 |

| 00:00:06.000000 |

| 00:00:07.000000 |

| 00:00:07.000000 |

| 00:00:08.000000 |

| 00:00:09.000000 |

+-----------------+

主从延时

因为是从从库查询的该日已抽奖次数,怀疑是从库延时导致, 但咨询了dba,他说不可能, 因为mysql主从都是使用的ssd, 且之前插入了几百万条数据也几乎实时同步到从库了。且抽了最多次数的那个用户第一次和最后一次时间间隔也太大了 有8分钟

timediff(max(draw_time),min(draw_time))

00:08:28

但我感觉也只有这一原因能解释了, 想咨询一下有没办法验证这一假设呢?

即可有办法看到某条记录主从之间的延时,插入到主库的时间与插入到从库的时间差。

你可能感兴趣的:(mysql获取记录的插入时间)