关于mybatis 延迟加载未设置导致的mysql CPU过高,以及部分Mysql 优化

先说背景。

       近来在弄一个物联网的系统,上线一段时间后,随着设备接入量的上升,数据爆棚,然后运行缓慢,查看mysql 已忙的要烧掉CPU,换了阿里的RDS,还是不行,(在这吐槽下:不好的方面1 还没有我自建的DB快,原因不确定。 2 DTS 确实很快,但需要注意检查,他会偷工减料的。好的方面,服务还算可以,五天无理由退款很霸气)

使用多种方案无效,不再啰嗦。

 解决:

       1  mybatis  我忘记了添加延迟加载,怪不得没查大表也这么慢(主要问题点)

        2  更换部分表引擎为myIsam,以提升频繁的插入效率

        3 优化SQL

  详细说下mybatis延迟加载的部分。

网上有很多关于这个的文章,但就是一脸懵逼。现留笔记记录备用

结构和配置:maven + spring +springmvc+mybatis +mysql5.5

 

关于mybatis 延迟加载未设置导致的mysql CPU过高,以及部分Mysql 优化_第1张图片

 

再发下  spring-mybatis.xml 部分

关于mybatis 延迟加载未设置导致的mysql CPU过高,以及部分Mysql 优化_第2张图片

这里 有一点需要注意:

2 结点是模糊扫描,1 结点引入一次,2 结点如果不排除1结点的引入会报重复引入错误的

接着发下mybatis-config.xml 。这个网上就较多了

关于mybatis 延迟加载未设置导致的mysql CPU过高,以及部分Mysql 优化_第3张图片

最后发下依赖,没有这个会报错。pom.xml 部分

关于mybatis 延迟加载未设置导致的mysql CPU过高,以及部分Mysql 优化_第4张图片

以上就是我在我的mybatis 添加延迟加载的全部。

感谢:https://blog.csdn.net/zjttlance/article/details/80110246

另。1mysql 表的引擎可以直接在Navicat中修改,对,就是直接改,数据大的话会慢点,但可以直改

2 mysql  的一个错误:1044-Access denied for user 'root'@'localhost' to database

可以直接navicat 找 mysql 库的user表直接改,但要记得重启

详细:https://blog.csdn.net/rain_bridge/article/details/52938751

就这些了,留个笔记备用。发现哪里有问题或不合适的地方,望大神评论里指证。

 

你可能感兴趣的:(web,DB,数据库,maven)