十六、mysql 分区之 简单sql优化1
1.使用 show session status like '%Com_%'; 可以查看当前连接的各个sql的执行频率
show global status like '%Com_%'; 可以查看从上次mysql服务器启动到目前为止sql的执行频率 2.explain select * from tmp;
mysql> explain select * from zi_emp where tid = 1000\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: zi_emp
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 2
Extra: Using where
1 row in set (0.00 sec) PS::type类型中,ALL为效率最差,因为这样意味着进行全表扫描
index类型为索引全扫描
range为索引范围扫描
ref为非唯一索引或唯一索引的前缀扫描
eq_ref唯一索引扫描
const/system 单表中只有一个匹配的行,比如用户表
NULL 没有访问到表或索引 比如:select 1=1; 3.哈哈,发现一个很好的东西
explain extended select * from zi_emp; 查看执行sql语句前,mysql优化器做了点什么
show warnings;
mysql> show warnings\G
*************************** 1. row ***************************
Level: Note
Code: 1003
Message: select `bin`.`zi_emp`.`tid` AS `tid`,`bin`.`zi_emp`.`tname` AS `tname` from `bin`.`zi_emp`
1 row in set (0.00 sec) PS::没错,你看的就是一条完整的sql语句,也就是说这可能是msyql给定的最好的sql语句了,可以学习并复用 4.explain partitions select * from zi_emp where xxxxx 可以查看当前记录的分区所在位置
十六、mysql 分区之 简单sql优化1的更多相关文章
- 十六、mysql 分区之 简单sql优化2
.索引的分类 B-Tree 基本支持 HASH 只有memory支持 R-Tree myisam支持 Full-text myisam支持(全文索引) .Memory引擎下只有“=”条件才会使用索引 ...
- mysql进阶(二十六)MySQL 索引类型(初学者必看)
mysql进阶(二十六)MySQL 索引类型(初学者必看) 索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型. 在数 ...
- MySql(五)SQL优化-优化SQL语句的一般步骤
MySql(五)SQL优化-优化SQL语句的一般步骤 一.优化SQL语句的一般步骤 1.1 通过show status命令了解各种SQL的执行频率 1.2 定位执行效率较低的SQL语句 1.3 通过e ...
- php面试专题---Mysql索引原理及SQL优化
php面试专题---Mysql索引原理及SQL优化 一.总结 一句话总结: 注意:只写精品 1.为表设置索引要付出代价 是什么? 存储空间:一是增加了数据库的存储空间 修改插入变动索引时间:二是在插入 ...
- 风炫安全Web安全学习第十六节课 高权限sql注入getshell
风炫安全Web安全学习第十六节课 高权限sql注入getshell sql高权限getshell 前提条件: 需要知道目标网站绝对路径 目录具有写的权限 需要当前数据库用户开启了secure_file ...
- MySQL索引原理及SQL优化
目录 索引(Index) 索引的原理 b+树 MySQL如何使用索引 如何优化 索引虽好,不可滥用 如何验证索引使用情况? SQL优化 explain查询执行计划 id select_type tab ...
- 【MySQL】10条SQL优化语句,让你的MySQL数据库跑得更快!
慢SQL消耗了70%~90%的数据库CPU资源: SQL语句独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低: SQL语句可以有不同的写法: 1 不使用子 ...
- 温故知新-Mysql的体系结构概览&sql优化步骤
文章目录 Mysql的体系结构概览 连接层 服务层 引擎层 存储层 存储引擎 存储引擎概述 存储引擎特性c#Winform自定义控件-表格优化
出处:http://www.hzhcontrols.com/原文:http://www.hzhcontrols.com/blog-149.html本文版权归www.hzhcontrols.com所有欢 ...
随机推荐
- KindEditor编辑器, 利用ajax动态切换编辑器内容
// 后台成功返回数据后的js处理 KindEditor.remove('#content_id'); // 先移除之前创建的编辑器 var editor = KindEditor.create('# ...
- make clean 和make distclean的区别
make clean 和make distclean的区别:make clean仅仅是清除之前编译的可执行文件及配置文件.而make distclean要清除所有生成的文件make distclean ...
- linux-进程相关
ps查看当前运行的进程 ps -ef|grep httpd ps是静态的 ps -aux|grep httpd top 是动态的 kill 杀进程 kill -[选项] 进程号 -9强制杀死 kil ...
- linux内存查看
一般用free命令,显示整体内存使用状况: 第二行从OS角度,used包括内核+应用+buffers+cached使用的内存,buffers/cached是磁盘缓存的大小 第三行从应用角度,可用内存= ...
- 一些网摘的hpc材料
source from: https://computing.llnl.gov Factors determines a large-scale program's performance 4 ...
- [改善Java代码]多线程使用Vector或HashTable
Vector是ArrayList的多线程版本,HashTable是HashMap的多线程版本,这些概念我 们都很清楚,也被前辈嘱咐过很多次,但我们经常会逃避使用Vector和HashTable,因为用 ...
- ajax开发模拟后端数据接口
在做前端开发的时候,特别是一些业务逻辑集中在前端的开发中.我们经常需要自己来模拟获取到后台接口的数据.为什么要模拟?可能后台接口还没有开发完成,可能后台还没有数据返回,可能...等等原因.曾经,我也尝 ...
- ActiveMQ(5.10.0) - Message Redelivery and DLQ Handling
When messages expire on the ActiveMQ broker (they exceed their time-to-live, if set) or can’t be red ...
- Xcode7主题路径
// Xcode7主题路径~/Library/Developer/Xcode/UserData/FontAndColorThemes
- wpf DataGrid 双击获取当前行的控件
<DataGrid Margin="10" HorizontalAlignment="Left" VerticalAlignment="Top& ...