加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中SQL优化 索引优化 锁机制 主从复制的方式

发布时间:2022-06-16 22:03:44 所属栏目:MySql教程 来源:互联网
导读:myisam存储:如果表对事务要求不高,同时是以查询和添加为主的,我们考虑使用myisam存储引擎,比如bbs 中的发帖表,回复表 需要定时进行碎片整理(因为删除的数据还是存在):optimize table table_name; MySQL中SQL优化、索引优化、锁机制、主从复制的方法
  myisam存储:如果表对事务要求不高,同时是以查询和添加为主的,我们考虑使用myisam存储引擎,比如bbs 中的发帖表,回复表
 
  需要定时进行碎片整理(因为删除的数据还是存在):optimize table table_name;
  MySQL中SQL优化、索引优化、锁机制、主从复制的方法
  InnoDB存储:对事务要求高,保存的数据都是重要数据,我们建议使用INN0DB,比如订单表,账号表.
 
  1 SQL性能分析
  SQL性能下降原因:
 
  1、查询语句写的烂
  2、索引失效(数据变更)
  3、关联查询太多join(设计缺陷或不得已的需求)
  4、服务器调优及各个参数设置(缓冲、线程数等)
  通常SQL调优过程:
 
  观察,至少跑1天,看看生产的慢SQL情况。
  开启慢查询日志,设置阙值,比如超过5秒钟的就是慢SQL,并将它抓取出来。
  explain + 慢SQL分析。
  show profile。
  运维经理 or DBA,进行SQL数据库服务器的参数调优。
  总结:
 
  1、慢查询的开启并捕获
  2、explain + 慢SQL分析
  3、show profile查询SQL在Mysql服务器里面的执行细节和生命周期情况
  4、SQL数据库服务器的参数调优
  2 常见通用的JOIN查询
  SQL执行加载顺序
  手写顺序:
 
  SELECT DISTINCT
      <select_list>FROM
      <left_table> <join_type>JOIN <right_table> on <join_codition> //join_codition:比如员工的部门ID和部门表的主键id相同WHERE
      <where_condition>GROUP BY
      <group_by_list>HAVING
      <having_condition>ORDER BY
      <order_by_condition>LIMIT
      <limit_number>
  MySQL机读顺序:
 
  1 FROM <left_table>
  2 ON <join_condition>
  3 <join_type> JOIN <right_table>
  4 WHERE <where_condition>
  5 GROUP BY <group_by_list>
  6 HAVING <having_condition>
  7 SELECT
  8 DISTINCT <select_list>
  9 ORDER BY <order_by_condition>
  10 LIMIT <limit_number>

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!