优化mysql数据库的几个步骤

发表于:2017-6-30 13:26  作者:小坡子   来源:博客

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 数据库 MySQL

  分析问题的几个步骤:
  1. 开启慢查询日志。
  这个步骤就是为了记录慢查询的sql,为下个步骤做准备,此步骤相关的知识点有如下:
  1. show variables like '%slow_query_log%'; 查看慢查询的日志记录是否开启。
  2. set global slow_query_log=1;  设置慢查询开启。
  2. 用explain 分析sql 语句。
  ps: explain  select *  from temp 得到如下图所示:
  通过这个步骤的分析基本能找到问题出现在哪? 主要看红框的那几个点(type,key,ref,extra).。应该避免type为all,这就是说这个sql是通过全表扫描查找的,key代表这个sql实际是否用到了索引,null代表没有。ref 表示这个操作引用了那些东西,
  比如const(常量)。Extra 表示一些额外的信息。比如using index,using filesort(文件排序,尽量避免使用)。
  注释:如何查看步骤的执行顺序呢?  如果id相同,从上到下执行。如果id不同id大的先执行。
  3. 使用profile  来查看sql 的执行周期,看看sql的问题出错在执行的哪个步骤上。
  1. set profiling=1; 设置profile 功能开启。2. show profiles: 用来查看mysql 前十几条查询的。
  3.show profile for query id;
  比如:show profile for query 2; 就是 查看 第二条sql 的执行生命周期,

  4. 修改mysql 数据库配置文件,这个步骤一般都是DBA 运维操作。
  这个步骤主要是修改mysql的配置文件,比如设置查询缓冲区的大小等等。


评 论

论坛新帖



建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海信义律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2021, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道