当前位置: 首页 > news >正文

邢台市刚刚发生的事百度优化关键词

邢台市刚刚发生的事,百度优化关键词,建设网站有何要求,wordpress前台登陆插件1.索引 1.1 索引的概念 索引(index)是帮助MySQL高效获取数据的有序数据结构,这些数据结构以某种方式指向数据,这样就可以在这种数据结构之上实现高级查找,而不是全表扫描。 MySQL中选择的数据结构是 B 树。 innoDB的逻辑存储结构 表空间 -- …

1.索引

1.1 索引的概念

        索引(index)是帮助MySQL高效获取数据的有序数据结构,这些数据结构以某种方式指向数据,这样就可以在这种数据结构之上实现高级查找,而不是全表扫描。

        MySQL中选择的数据结构是 B+ 树。

        innoDB的逻辑存储结构

表空间 -- 段 -- 区 -- 页 --- 行,innoDB的最小操作单元是页。一个区固定大小1M,页固定大小16K,所以一个区有64个页

1.2 索引的分类

在innoDB中,根据索引的存储形式,又可以分为聚焦索引和二级索引:

如果我们查询设置的条件是二级索引,那么它会先通过二级索引查找到主键值,然后再到聚焦索引中查询对应的数据,这个过程被称作回表查询

1.3 索引语法

1.3.1 创建索引

        create [unique/fulltext] index 索引名 on 表名(字段名列表)

        eg. create unique index student_name on student(name)

如果只有一个字段,那么这个索引被称作单列索引,多个字段则是联合索引

1.3.2 查看索引

        show index from 表名

        eg. show index from student

1.3.3 删除索引

        drop index 索引名 on 表名

        eg. drop index student_name on student

2.SQL性能查看

2.1 SQL性能分析

2.1.1 查看当前数据库SQL执行频率

        show global/session status like 'com_______'(七个下划线,一个下划线代表一个字符,insert,update,delete,select都是六个字符加上一个下划线)

如果当前数据库是查询的频率最高,那么我们就可以考虑优化查询SQL。

2.1.2 慢查询日志

慢查询日志只能记录超过设置时间的查询语句,如果我们的超时设置为2,但是有些查询花费了1.9s,那么它是不能被慢日志记录的,此时我们需要使用profiling进行查看

-- 查看当前是否支持 profiling
select @@have_profiling ;-- 查看profiling是否打开  0-关闭  1-打开
select @@profiling ;-- 打开profiling 如果是0就是关闭
set profiling = 1 ;-- 一系列查询操作
select * from student ;
select * from student where id = 1 ;
select name from student where id = 1 ;-- 查看开启profiling期间所有查询花费的时间
show profiles ;

2.1.3 explain/desc 查看查询计划

3.索引失效的情况

3.1 最左前缀法则

通俗来讲,如果存在一个联合索引 (字段1,字段2,字段3),我们在设置查询条件的时候必须出现字段1才会使用索引,否则是全文查找。

下面分情况讨论:

        使用  字段1----->会使用索引

        使用  字段1,字段2----->会使用索引,但是不会使用字段3的索引

        使用  字段2,字段3----->不会使用索引,不符合最左前缀法则,字段1未出现

        使用  字段1,字段3----->会使用索引,但是字段3索引会失效,因为跳过了字段2

字段出现的先后顺序没有要求,比如  字段3,字段2,字段1  也是会使用索引的。

3.2 范围查询

如何避免:使用>=或者between and 不会导致失效。

3.3 索引列运算

3.4 字符串不加引号

3.5 头部模糊匹配

 3.6 or 连接的条件

3.7 数据分布影响

4.索引使用

4.1 SQL提示

4.2 覆盖索引

为什么要返回的列在索引中能全部找到能提示效率呢?

如果要返回的列在联合索引中不能全部找到,那么它就会多一个回表查询的步骤,降低了查询的效率。因为select * 极其容易出现回表查询(只有在有一个联合索引包括表中所有列的时候才不会出现回表查询),所以不建议使用select *。

4.3 前缀索引

4.4 单列索引和联合索引

如果MySQL评估使用单列索引效率更高而使用了单列索引,但是存在单列索引中找不到的返回列,那么此时会进行回表查询,降低了效率。

http://www.cadmedia.cn/news/11632.html

相关文章:

  • 建设网站有什么网站互联网广告投放平台加盟
  • 网站建设图片怎么调seo排名如何优化
  • 南昌电影网站开发永久免费客服系统软件
  • 网站建设服务费计入会计科目今天的国内新闻
  • 网站显示正在建设是什么意思郑州seo推广
  • 网站建设boss都知道建立网站的软件
  • 大连网站排名网络推广公司线上宣传方式有哪些
  • 莆田外贸建站竞价推广账户竞价托管
  • 创建网站论坛上海seo优化培训机构
  • 网站开发应聘问题商业推广
  • 高校网站平台建设百度怎么提交收录
  • 山西成宁做的网站抖音排名优化
  • 建设商城网站公司 百度百科谷歌搜索官网
  • 建设公司网站需要什么资料网站统计器
  • 企业网站的建设电话咨询自己开发网站怎么盈利
  • 广州网站设计找哪里怎样在网上做宣传
  • 商务平台网站推广软文怎么写样板
  • 西安快速排名优化seo网站关键词排名软件
  • 做关于植物的网站东莞seo网站排名优化公司
  • 网络技术培训内容网络seo是什么工作
  • 嘉兴网站制作软件网络营销试卷及答案
  • 网站建设过程中准备的工作站外推广
  • 佛山市研发网站建设哪家好网络营销方案设计毕业设计
  • 集团网站设计公司网站关键词优化多少钱
  • 成都网站建设吧seo网站优化系统
  • 重庆专业的网站建设项目营销推广策划
  • 创建个网站需要多少钱aso优化运营
  • 苏州网页模板建站小红书外链管家
  • 河源定制网站建设推广免费域名注册永久
  • 扬中网站建设门户报价怎样开网站