400-650-7353
您所在的位置:首页 > IT干货资料 > 软件测试 > 【软件测试基础知识】如何解决SQL语句使用不当导致的性能低问题

【软件测试基础知识】如何解决SQL语句使用不当导致的性能低问题

  • 发布: 软件测试培训
  • 来源:软件测试干货资料
  • 2020-03-06 17:15:28
  • 阅读()
  • 分享
  • 手机端入口

今天咱们就说一下测试涉及数据库操作的功能时如何发现SQL语句使用不当导致的性能低的问题。主要方法就是通过EXPLAIN命令查看SQL语句的执行计划,如果执行计划中没有使用任何索引,基本上可以确认是性能问题,其他情况需要具体分析。如果开发不信,将SQL语句涉及的表格插入100万行然后执行相同的功能操作看看。

今天的例子以Mysql数据库演示结果,其他数据库也是类似操作。

执行explain之后结果集包含如下信息:

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

|

| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |

+

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

每个字段解释如下表:

执行样例:

mysql> explain select * from test where id > 1;

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

|

| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |

+

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

|

| 1 | SIMPLE | test | range | PRIMARY | PRIMARY | 8 | NULL | 34252 | Using where |

+

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

大家初步使用执行计划时,可以只关注type的取值是否是ALL即可,如果是ALL就说明SQL语句执行会导致全表扫描,这种SQL语句在表记录较多时会引入性能问题。

 

文章“【软件测试基础知识】如何解决SQL语句使用不当导致的性能低问题”已帮助

>>本文地址:https://www.ujiuye.com/zhuanye/2020/48458.html

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

1 您的年龄

2 您的学历

3 您更想做哪个方向的工作?

获取测试结果
  • 大前端大前端
  • 大数据大数据
  • 互联网营销互联网营销
  • JavaJava
  • Linux云计算Linux
  • Python+人工智能Python
  • 嵌入式物联网嵌入式
  • 全域电商运营全域电商运营
  • 软件测试软件测试
  • 室内设计室内设计
  • 平面设计平面设计
  • 电商设计电商设计
  • 网页设计网页设计
  • 全链路UI/UE设计UI设计
  • VR/AR游戏开发VR/AR
  • 网络安全网络安全
  • 新媒体与短视频运营新媒体
  • 直播带货直播带货
  • 智能机器人软件开发智能机器人
 

快速通道fast track

近期开班时间TIME