首页
学习
活动
专区
圈层
工具
发布

MySQL诊断调优常用SQL语

在很多时候,我们需要通过SQL语句来查看MySQL执行SQL的情况,例如查看SQL执行队列,是否存在慢查询等等。...先看下基础配置,监控mysql执行的sql语句需要先开启相关日志 linux系统 可以在/etc/mysqld中添加如下: 指定日志路径 log =/usr/local/mysql/mysql.log...(这个路径自定义即可) 就可以使用: tail -f mysql.log 如果需要监控慢查询可以添加如下内容: 添加慢查下记录 log-slow-queries = /usr/local/mysql/slowquery.log...mysql_log.sql" (这里路径自定义即可) 然后,重新启动mysql,就可以实时看到myql服务器当前正在执行的语句了。...常用的SQL,用于诊断排查问题 注:下列SQL在执行时,可能还需要你开启MySQL相应的配置项,请根据提示进行配置 1.

1.3K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    yuque-hexo:语雀写文,自动部署 Hexo 博客

    因为从最开始写笔记、代码中的 README 时,对其中的语法还花了一段时间来记录,并且总感觉辛辛苦苦写了一篇文章,看着都是文字还有各种语法,在预览的瞬间,有一种成就感(可能有吧)。...后来喜欢写 Hexo 博客,公众号等,都需要支持原生 Markdown,虽然很多“所见即所得”可以复制导出 Markdown,但是在各个平台的兼容性,以及导出的语法并不能够很通用,所以就一直使用原生 Markdown...2语雀 新建知识库 登录语雀,新建知识库 导入文章 将之前写的 Hexo 文章导入到这个知识库中,我是直接将 _post 压缩了一下,批量上传的。...login (group), 也称为个人路径", "repo": "语雀仓库短名称,也称为语雀知识库路径", "token": "这里是语雀的 token ", "onlyPublished...尤其是看看封面之类的,如果不对,就自己看看从语雀拉取的文章格式对不对。

    2.6K20

    MySQL查询语句中的IN 和Exists 对比分析

    背景介绍 最近在写SQL语句时,对选择IN 还是Exists 犹豫不决,于是把两种方法的SQL都写出来对比一下执行效率,发现IN的查询效率比Exists高了很多,于是想当然的认为IN的效率比Exists...(2)逐行针对tabA表的记录,去关联tabB表,判断tabB表的子查询是否有返回数据,5.5之后的版本使用Block Nested Loop(Block 嵌套循环)。...这种情况下子查询结果集很大,我们看看MySQL的查询计划: 使用in时,由于子查询结果集很大,对t_author和t_poetry表都接近于全表扫描,此时对t_author表的遍历耗时差异对整体效率影响可以忽略...,执行计划里多了一行,在接近全表扫描的情况下,mysql优化器选择了auto_key来遍历t_author表: 使用exists时,数据量的变化没有带来执行计划的改变,但由于子查询结果集很大...,5.5以后的MySQL版本在exists匹配查询结果时使用的是Block Nested-Loop(Block嵌套循环,引入join buffer,类似于缓存功能)开始对查询效率产生显著影响,尤其针对<

    1.5K10

    原生基础的判断语句中switch语句和if else if语句的区别

    条件判断语句是程序开发过程中一种经常使用的语句形式,和大部分编程语言相同,JavaScript 中也有条件判断语句。...所谓条件判断,指的是程序根据不同的条件来执行不同的操作,例如根据年龄来显示不同的内容,根据布尔值 true 或 false 来判断操作是成功还是失败等。...alert('橙子出来了'); break; } 而if....else...语句更加灵活,通常用于范围判断...('及格') }else if(score >=60){ alert('不及格') } 3.switch语句进行条件判断后直接执行到程序的条件语句...而if...else语句由几种条件,就得判断多少次。 4.当分支比较少,if.....else语句的执行效率比switch语句更高! 5.当分支比较多时,switch语句的执行效率较高,而结构更加清晰

    1.9K20

    如何判断MySQL实例出了问题

    select 1判断 查表判断 更新判断 内部统计 select 1判断 select 1成功返回,只能说明库的进程还存在,不能说明主库没有问题。...查表判断 为了解决select 1的问题,我们可以在系统库(mysql库)里面创建1个表,比如命名为health_check,里面只放一行数据,如下: create table health_check...更新判断 update mysql.health_check set t_modified = now(); 对于主备库我们都需要使用上述语句进行检测,但是如果主备关系为双M结构,说明两个节点会同步彼此的...MAX_TIMER_WAIT:单位皮秒,所有IO的耗时求和、最小值、平均值、最大值 COUNT_READ:读操作的次数 SUM_NUMBER_OF_BYTES_READ:总共从日志里读取了多少个字节 COUNT_WRITE:写操作的次数...SUM_NUMBER_OF_BYTES_WRITE:写日志的字节数 COUNT_MISC:其他类型的次数,比如对于redo log,可以认为是fsync的次数 关于内部统计信息的开启可以通过setup_instruments

    1.5K20
    领券