通过binlog日志查表数据缺少原因

在做一个ecstore项目的时候 
同事修改了一些东西  等到拉下来代码 什么时候cmd update后  什么时候再登会员登不上了  权限不正确  修改完新密码 
提示登录失败:会员数据存在问题,请联系商家或客服
一看这块儿  sdb_b2c_members 表getList不到数据导致的 再看表里确实没有我这个会员的数据了 
sdb_pam_members表里是有的  同事说是应该是我们删除了 自己确定没有删除过的  于是决定去查下mysql binlog日志
进入mysql


mysql> show binlog events in 'localhost-bin.000030';
这样展示出来很多  看着不太方便


使用mysqlbinlog导到文件中查看搜索会很方便 其中-d 是选择哪个数据库 可以不加 -d ecstore
sudo mysqlbinlog --start-datetime="2018-06-12 12:00:00" --stop-datetime='2018-06-12 23:00:00' -d ecstore /data/mysql/3306/localhost-bin.000030 > mysqlbin0613.log


然后查看文件 搜索`sdb_b2c_members`
发现
/*!*/;
# at 3274657
#180612 16:03:36 server id 1  end_log_pos 3274823 CRC32 0x324a9e3e Query thread_id=2137 exec_time=0 error_code=0
SET TIMESTAMP=1528812216/*!*/;
ALTER IGNORE TABLE `sdb_b2c_members` ADD UNIQUE INDEX ind_company_name(`company_name`)
/*!*/;
然后明白了为什么会员登不上提示登录失败:会员数据存在问题,请联系商家或客服  
cmd update时执行这条sql 有IGNORE的话 如果表中有多条相同的company_name会自动只保留一条 其它都干掉 
所以sdb_b2c_members表里 缺少了很多条会员数据
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值