1、插入数据:批量插入、主键顺序插入、手动提交事务 ,大数据量插入用load指令

2、主键优化:尽量降低主键的长度,减少主键占用的磁盘空间,尽量顺序插入,减少页分裂

3、order by:尽量使用有索引的列排序,使用覆盖索引,减少回表查询,多字段排序一个升序一个降序,此时需要注意联合索引在创建时指定排序规则。如果不可避免出现filesort,大数据量排序时,可以适当增大排序缓冲区大小sort_buffer_size(默认256k)

4、group by:尽量满足最左前缀法则

5、limit: 通过覆盖索引+子查询

6、count:用redis来计数,因为InnoDB在执行count(*)的时候需要一行一行把数据从引擎中读出来再计数。count(字段)<count(主键id)<count(1)~count(*),尽量使用count(*)

7、update:要根据索引字段更新,因为某一列没有索引的话,行锁就会升级为表锁,要避免这种情况

Sql调优(面试题)相关推荐

  1. Mysql高级调优篇——第五章:Sql调优在面试中深度剖析

    上节讲了Sql调优实战,本章聊聊面试中Sql调优深度的剖析场景! 在讲之前我们先做一些准备工作,建立一些需要用到的表: Mysql高级调优篇表补充--建表SQL_风清扬逍遥子的博客-CSDN博客⭐️t ...

  2. 读《程序员的SQL金典》[4]--SQL调优

    一.SQL注入 如果程序中采用sql拼接的方式书写代码,那么很可能存在SQL注入漏洞.避免的方式有两种: 1. 对于用户输入过滤敏感字母: 2. 参数化SQL(推荐). 二.索引 ①索引分类 聚簇索引 ...

  3. sql优化的方法及思路_合理的sql优化思路--如何缩短SQL调优时间?

    概述 当生产环境发生故障或者系统特别慢的时候,这时候你从awr报告拿到有问题的sql,但是优化的时候却优化了很久还没解决,这时候在领导或者客户面前就不太好了...那么我们怎么去缩短sql调优的时间,一 ...

  4. MySQL 索引和 SQL 调优手册

    MySQL索引 MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等.为了避免混乱,本文将只关注于BTree ...

  5. MySQL索引和SQL调优手册

    MySQL索引 MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等. 为了避免混乱,本文将只关注于BTre ...

  6. 11g新特性-自动sql调优(Automatic SQL Tuning)

    11g新特性-自动sql调优(Automatic SQL Tuning) 在Oracle 10g中,引进了自动sql调优特性.此外,ADDM也会监控捕获高负载的sql语句. 在Oracle 11g中, ...

  7. Mysql排序添加名词_记面试中问到的MySQL的SQL调优问题

    目录 1.场景还原 2.名词解释 3.实践情况 4.个人观点 5.引申问题 1.场景还原 面试官:小伙子,听说你会SQL调优,那我这里有一条SQL,你来帮我调优一下.SQL如下: SELECT * F ...

  8. sql调优的几种方式_「数据库调优」屡试不爽的面试连环combo

    点赞再看,养成习惯,微信搜索[三太子敖丙]关注这个互联网苟且偷生的工具人. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的 ...

  9. SQL调优指南笔记6:Explaining and Displaying Execution Plans

    本文为SQL Tuning Guide第6章"解释和显示执行计划"的笔记. 了解如何解释SQL语句并显示其计划对于 SQL 调优至关重要. 重要基本概念 row source tr ...

  10. oracle sql 分区查询语句_Oracle SQL调优之分区表

    一.分区表简介 分区通过让您将它们分解为更小且更易于管理的分区(称为分区)来解决支持非常大的表和索引的关键问题.不需要修改SQL查询和DML语句以访问分区表.但是,在定义分区之后,DDL语句可以访问和 ...

最新文章

  1. Learning C# by Developing Games with Unity 5.x(2nd) 学习
  2. 盘点最受欢迎的十个开源大数据技术
  3. ubuntu 14.04 samba 的 配置
  4. 转 23种开发模式一点就通
  5. ACM学习历程—Hihocoder [Offer收割]编程练习赛1
  6. [vue] vue能监听到数组变化的方法有哪些?为什么这些方法能监听到呢?
  7. 百度实习生前端面试面经
  8. html在线快递单号打印,HTML 快递打印模板
  9. office 在线编辑 java_JAVA调用PageOffice在线打开、编辑Word文档
  10. 好玩的ios APP动动手指,轻松挣美金~~
  11. 从共享征信黑名单开始:LinkEye想打造基于区块链的征信联盟
  12. html class生效顺序,HTML5 CSS3小猪日历(动物挂历)
  13. bat使用命令解析-详细(转)
  14. 大招流的英雄没法子混了啊!----- dota 6.72新英雄
  15. js基础--数据类型
  16. js 中断函数执行_javascript 终止函数执行操作
  17. emmc和SPI共舞
  18. 阿里新零售中的智能补货(I)— 库存模型
  19. 用51单片机驱动蜂鸣器
  20. npm-run-all 同时运行多条命令

热门文章

  1. 三级文明的代码_文明6秘籍代码有哪些 文明6秘籍代码大全
  2. zotero文献管理高阶操作|全网最新最全的zotero高效运用技巧,quicker动作大盘点
  3. 计算机网口信号灯常亮电源灯不亮,腾达路由器lan接口灯不亮怎么办? | 192路由网...
  4. 华为发布P30在高端市场挑战苹果,现实却是靠性价比手机
  5. Osu-ICG-Sulfo|吲哚菁绿-磺酸-Osu|花青素标记
  6. matlab 如何画散点图
  7. Android OTA 升级专栏文章导读
  8. 中国SaaS和Salesforce的差距到底有多大?
  9. html(10-小鲜兔儿项目)
  10. 王者荣耀转区仅显示可转移服务器,王者荣耀怎么转区 王者荣耀转区方法大全...