公司订单系统每日订单量庞大,有很多表数据超千万。公司SQL优化这块做的很不好,可以说是没有做,所以导致查询很慢。 节选某个功能中的一句SQL EXPLAIN查看执行计划,EXPLAIN + SQL 查看SQL执行计划 一个索引没用到,受影响行接近2000万,难怪会慢。 原来的SQL打印出来估计有好几 ...
分类:
数据库 时间:
2018-04-13 17:53:31
阅读次数:
209
SELECT [sJOB].[job_id] AS [JobID] , [sJOB].[name] AS [JobName] , [sDBP].[name] AS [JobOwner] , [sCAT].[name] AS [JobCategory] , [sJOB].[description] A ...
分类:
数据库 时间:
2018-03-27 12:34:13
阅读次数:
171
5.1 方式一:explain 筛选出有问题的 SQL,我们可以使用 MySQL 提供的 explain 查看 SQL 执行计划情况(关联表,表查询顺序、索引使用情况等)。 用法: 返回结果: 字段解释:1) id:select 查询序列号。id相同,执行顺序由上至下;id不同,id值越大优先级越高 ...
分类:
数据库 时间:
2018-03-15 16:26:51
阅读次数:
195
查看 sql 执行计划的方法有许多种, 10046 事件就是其中的一种. 与其他查看 sql 执行计划不同, 当我们遇到比较复杂的 sql 语句, 我们可以通过 10046 跟踪 sql 得到执行计划中每一个步骤的逻辑读, 物理读以及花费的时间等. 这种细粒度的跟踪对于我们分析 sql 性能尤其有用 ...
分类:
其他好文 时间:
2018-03-10 14:07:57
阅读次数:
193
一个业务场景,需要进行union查询: 查询速度非常慢,大概要37秒: 直接复制sql在数据库客户端执行,速度很快,由此可知是mybatis的原因,在网上搜索,可以配置fetchSize="500",但是测试结果还是一样,重新查看sql,返现子查询和合并后的查询,都是取的别名A,替换union后的别 ...
分类:
数据库 时间:
2018-03-03 19:28:36
阅读次数:
199
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。 Explain语法:explain select … from … [where …] 例 ...
分类:
其他好文 时间:
2018-02-27 15:01:47
阅读次数:
162
1:查看sql的执行时间 2:创建索引 原文出自http://www.cnblogs.com/xcj26/p/3173028.html ...
分类:
数据库 时间:
2018-02-08 13:30:53
阅读次数:
176
需求老大:zain啊,咱们的数据库今天又多少查询语句啊?我:额,稍等,我看看啊;心想,{尼玛,我怎么知道有多少select语句啊}那么问题来了,如何查看MySQL数据库的生产服务器有多少的查询语句那?这里使用到了showglobalstatuslike命令来查询,同时写了一个简单的脚本,每天定时00.00执行,然后发送到管理员邮箱来实现sql语句的执行状态记录;通过showglobalstatus
分类:
数据库 时间:
2018-01-19 17:25:17
阅读次数:
224
select * from sys.sysprocesses --查进程select * from sys.sysusers --查用户相关信息Select * from sys.dm_exec_connections --此命令可以看到连接情况--此命令可以看到有多少会话,一个连接可以有多个会话s ...
分类:
数据库 时间:
2018-01-03 16:03:56
阅读次数:
178