Mybatis-Plus SQL性能监控 Mybatis-Plus使用p6spy对SQL性能进行监控的方法
诗水人间 人气:2第一步、引入maven依赖
<!-- p6spy sql性能分析工具--> <dependency> <groupId>p6spy</groupId> <artifactId>p6spy</artifactId> <version>3.9.1</version> </dependency>
第二步、修改yml配置
原先的url
和driver-class-name
修改成p6spy
的驱动和url
形式。
本质上p6spy相当于代理了jdbc操作
server: port: 8088 spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver url: jdbc:p6spy:mysql://localhost:3306/mp_high?useSSL=false&serverTimezone=GMT%2B8 # driver-class-name: com.mysql.cj.jdbc.Driver # url: jdbc:mysql://localhost:3306/mp_high?useSSL=false&serverTimezone=GMT%2B8 username: root password: 123456 mybatis-plus: configuration: map-underscore-to-camel-case: true # 开启驼峰命名
第三步、新建一个spy.properties文件
spy.properties
文件内容:填入jdbc连接的驱动,以及日志输出配置
driverlist=com.mysql.cj.jdbc.Driver logMessageFormat=com.p6spy.engine.spy.appender.MultiLineFormat #logMessageFormat=com.p6spy.engine.spy.appender.SingleLineFormat databaseDialectDateFormat=yyyy-MM-dd HH:mm:ss appender=com.p6spy.engine.spy.appender.StdoutLogger
完成!然后就可以在控制台中查看到执行sql返回数据消耗的时间例如:
@Autowired UserMapper userMapper; @Test public void selectTest(){ List<User> users = userMapper.selectList(null); System.out.println(users); }
然后就可以根据sql的执行效率分析sql对sql进行优化,当然建议并发执行取平均值作为参考数据
加载全部内容