技术背景: 项目做读写分离开发,在公司原有的技术架构基础上,数据库实现主从复制,用mybatis来完成只读操作,从而实现读写分离的目的。
遇到问题: mybatis关联查询mysql数据库结果比用sql语句直接查询数据库结果记录条数少
原因排查:
1.首先,用 * 替换了数据库字段名;
2.其次,查询的结果集resultType 替换为 resultMap 结果映射;
处理结果: 还是没有解决。
后来突然想起来只读库的数据是从主库备份而来的,于是用sql直接在只读库中查询,发现结果和主库中的数据不一致。由此得知,mybatis关联查询mysql数据库结果比用sql语句直接查询数据库结果记录条数少的原因竟然是 主从库数据不一致导致的。