文档章节

Mysql性能优化-索引

指尖Coding
 指尖Coding
发布于 2016/12/23 12:15
字数 590
阅读 10
收藏 0
点赞 0
评论 0

索引-80%优化处理

 

mysql 索引-存储。

1.优化索引。

2.最优索引。

普通sql - 好的索引-最优索引

索引优点:--索引本来就是有序

1.1:减少扫描量

1.2:避免排序+避免临时表产生

1.3:随机I/O变为顺序I/O  固定硬盘 ssd iops-每秒查询次数。

1.4:可以减少查询锁定行。

 

串行硬盘。

 

B+Tree索性--mysql索引

二叉搜索树。

平衡的m路搜索树

==

聚族索引

主键+补助建、

二次查询,但是io控制的好,不损失,减少维护成本。适合更新多的。

 

非聚族索性

 

都是

InnoDB

=====================

表空间-区-页-16-块-4 

engine

14.6g

 

联合索引。

=========================================================

避免where 字句中 对字段+函数,避免格式转化等函数,否则索引就无效。

 

最左原则。计算索引值。双B关联,字符类型不一致,关联会查询换较慢。

mysql。

避免关联拆sql处理。主从分离-读写分离。

service存控制了。

水平拆表。

避免使用子查询。

 

总数:1. count() 2.统计某列除null外的数量。

 

联合索引-一次查询

============================================

分页:

 

limit 0,10;  size+计算初步偏移量。currentPage  。当期页和最终请求页的差值。

==============================

用户列表再次优化查询。

==============================

小表驱动大表才能left join

 

Theta书写sql;sql优化器。

select * from a,b where  a.a1.=b.b2;

 

=============================

数据挖掘。hadoop计算分析结果实时转到mysql中。 

复杂度-字典 索引记录关联吗?

=========================================

mysql离线报表,后台统计。

推荐系统-算法。

 分表-分库。

proxy-redis. mysql  区-页-块

跨行溢出式……

----------------------------------------

每个InnoDB表具有一个特殊的索引称为聚簇索引(也叫聚集索引,聚类索引,簇集索引)。

如果表上定义有主键,该主键索引就是聚簇索引。

如果未定义主键,MySQL取第一个唯一索引(unique)而且只含非空列(NOT NULL)作为主键,InnoDB使用它作为聚簇索引。

如果没有这样的列,InnoDB就自己产生一个这样的ID值,它有六个字节,而且是隐藏的,使其作为聚簇索引。

表中的聚簇索引(clustered index )就是一级索引,除此之外,表上的其他非聚簇索引都是二级索引,又叫辅助索引(secondary indexes)。

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
指尖Coding
粉丝 1
博文 51
码字总数 37092
作品 0
静安
SQL-SQL优化-索引

图文并茂详解 SQL JOIN Join 是关系型数据库系统的重要操作之一,一般关系型数据库中包含的常用 Join:内联接、外联接和交叉联接等。如果我们想在两个或以上的表获取其中从一个表中的行与另一...

掘金官方
2017/12/25
0
0
读《面向程序员的数据库访问性能优化法则》

刚刚看了一下2014年中国数据库技术大会(DTCC)PPT,网易杭州研究院的一位同学介绍了一下数据库的优化与调优。 网易的Mysql优化做的很好,而且还写了本书和大家分享这些经验《深入浅出MySQL...

ifeixiang
2015/01/04
0
0
MySQL的JOIN(四):JOIN优化实践之快速匹配

这篇博文讲述如何优化扫描速度。我们通过MySQL的JOIN(二):JOIN原理得知了两张表的JOIN操作就是不断从驱动表中取出记录,然后查找出被驱动表中与之匹配的记录并连接。这个过程的实质就是查...

文文1
04/01
0
0
SQL 常用优化手段总结 - 小技巧

中国有句古话叫做:欲速则不达。在一口气学完了分析 SQL 语句的一般步骤与索引的正确运用方式后小憩片刻。搭配上红茶与白兰地轻松享用下面这些小技巧吧! 系列文章回顾 SQL 常用优化手段总结...

给你添麻烦了
01/10
0
0
MySql5.6性能优化学习笔记

目标  了解什么是优化  掌握优化查询的方法  掌握优化数据库结构的方法  掌握优化MySQL服务器的方法 什么是优化?  合理安排资源、调整系统参数使MySQL运行更快、更节省资源。  ...

知止内明
06/28
0
0
教你编写高性能的mysql语法

教你编写高性能的mysql语法 一、SQL语句查询 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提...

长平狐
2013/01/06
551
0
mysql使用索引优化order排序

个人原创地址:http://www.phpthinking.com/archives/433 在数据库中我们一般都会对一些字段进行索引操作,这样可以提升数据的查询速度,同时提高数据库的性能像order by ,group by前都需要索...

PHP开发学习门户
2014/09/25
0
0
Mysql数据库调优

简介 在Web应用程序体系架构中,数据持久层(通常是一个关系数据库)是关键的核心部分,它对系统的性能有非常重要的影响。MySQL是目前使用最多的开源数据库,但是MySQL数据库的默认设置性能非...

不折腾难受斯基
2015/12/26
60
0
SQL 常用优化手段总结 - 分析 SQL 语句的一般步骤

数据库的性能调优是一个很大的话题。但是对于开发人员来讲,掌握一些常用的 SQL 优化手段却不是什么难事。 从本章节开始,将连载总结常用的适合于开发人员的 SQL 优化手段与大家分享。 要想解...

给你添麻烦了
01/09
0
0
关于 MySQL 8.0 新特性“隐藏索引”的一点思考

MySQL 8.0有一个称为“隐藏索引”的新功能,它允许快速启用/禁用MySQL Optimizer使用的索引。 在此分享一些对这个新功能的首次使用经验和想法。 对我们有什么用? 一是如果你想删除一个索引,...

andylhz
2016/11/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringBoot项目decorators报错

公司的老项目,用Eclipse开发的,导入IDEA启动之后访问报错如下: Cannot load excludes configuration file "/WEB-INF/decorators.xml" as specified in "sitemesh.xml" or "sitemesh-defa......

酸奶瓶盖儿
刚刚
0
0
Python之父Guido宣布退出核心决策层

昨天,Python 之父 Guido van Rossum 在 Python 邮件组里发邮称,他将退出 Python 核心决策层,而转居幕后。 他在邮件中写道,“我不想再为 PEP(Python 改进提案)[ PEP 572 ] 如此劳心劳力...

全部原谅
刚刚
0
0
saltstack配置文件管理:

1.服务端配置 编辑 top.sls 文件 # vim /srv/salt/top.sls //修改为如下 base: '192.168.192.*': - filetest 新建 filetest.sls 文件 # vim /srv/salt/filetest.sls file-test: file.managed......

硅谷课堂
3分钟前
0
0
Nginx深度优化

隐藏版本号 修改用户与组 网页缓存时间 日志切割 连接超时 更改进程数 网页压缩 防盗链 FPM参数优化 一、隐藏版本号 1.在centos7系统中通过curl命令查看 curl -I http://192.168.100.26 2.修...

Java填坑之路
5分钟前
0
0
Wampserver64位官网下载以及安装配置

WampServer就是Windows Apache Mysql PHP集成安装环境,即在window下的apache、php和mysql的服务器软件。 1、进入Wampserver 官网 网址:https://sourceforge.net/projects/wampserver/ 2、点...

梦梦阁
6分钟前
0
0
垃圾回收算法

一 如何判断对象可以回收 1 引用计数法 思路大概为:给对象添加一个引用计数器,每当有一个地方引用它时,计数器值加1;当引用失效时,计数器减1;任何时刻计算器为0的对象就是不可能再被使用...

sen_ye
11分钟前
0
0
Activiti简介(学习总结一)

一、介绍 activiti是使用命令模式设计基于bpmn2.0的一款开源工作流引擎。 工作流简单举例:提交请假申请->经理审批->结束。这就是一个简单流程。activiti支持用户自定义流程。配置各个流程对...

沙shasha
12分钟前
0
0
VCL界面控件DevExpress VCL Controls发布v18.1.3|附下载

DevExpress VCL Controls是 Devexpress公司旗下最老牌的用户界面套包。所包含的控件有:数据录入,图表,数据分析,导航,布局,网格,日程管理,样式,打印和工作流等,让您快速开发出完美、...

Miss_Hello_World
13分钟前
0
0
加米谷大数据培训:云计算、大数据和人工智能之间的关系

一般谈云计算的时候会提到大数据、谈人工智能的时候会提大数据、谈人工智能的时候会提云计算……感觉三者之间相辅相成又不可分割。 一、云计算最初的目标 云计算最初的目标是对资源的管理,管...

加米谷大数据
18分钟前
1
0
java集合元素的默认大小

当底层实现涉及到扩容时,容器或重新分配一段更大的连续内存(如果是离散分配则不需要重新分配,离散分配都是插入新元素时动态分配内存),要将容器原来的数据全部复制到新的内存上,这无疑使...

竹叶青出于蓝
20分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部