MySQL Performance schema设置的一些建议选项

MySQL 的Performance Schema由来已久,但由于内存消耗,性能影响等原因,导致其始终无法进入主流的MySQL默认配置,对MySQL的问题诊断以及处理造成很多不利的影响。

一般而言,Performance Schema会对性能造成影响,比如row mutex的位置。实际上,MySQL经常出现问题的地方,很多时候是在Server层,在这一层,很多Performance Schema的设置并不会导致性能的下降(或者明显下降)。

下文为总结出来的,推荐开启的Performance Schema选项,开启方式为update performance_schema.setup_instruments set enable='yes' where name='xxx'。

推荐打开

Oracle ADG上的列式存储支持

Oracle ADG上的列式存储支持Oracle ADG上的列式存储支

# MDL

MySQL 最著名的Server层锁之一,MDL锁管理着表结构变更的临界点,常常会遇到,alter 表的时候,发现需要等待,但偏偏发现不了是谁持有。

name like '%mdl%'

# Variables

MySQL操作set global variable的时候,有时候发现等待时间比较长的时候,会不会心里发凉?推荐打开。

name like '%variables%'

# Slave

主从结构下,Slave依赖的IO以及SQL,以及Master信息之间,有一套精密的锁结构保障安全,如果受到干扰,就会容易出现严重的复制故障。

name like '%Master_info%'

name like '%Relay_log_info%'

## Alter 相关

alter作为低频但重要操作,没有保障的执行,是非常危险的一种情况。

name like '%alter%'

必要情况下打开

Oracle ADG上的列式存储支持

Oracle ADG上的列式存储支持Oracle ADG上的列式存储支持

以下情况,先参考下当前数据的以下变量,之后操作:

这些值直接关系到Performacne Schema的内存占用大小。

开启系列

update performance_schema.setup_instruments set enable='yes' where name like 'xxx%'

## SQL语句系列

以statement/sql以及statement/com代表的系列,如果认为需要打开,可以全部打开,会存储所有执行的SQL语句,上限为前面所定,其中也加入了一部分执行计划的相关信息。

## SQL执行系列

以stage/sql/代表的系列,记录SQL执行的每一个阶段,是MySQL仅有的,在SQL运行完成后,一定程度上追查SQL执行计划的方式,

## 文件IO系列

wait/io代表的的系列,直接看具体文件IO的状况,在高负载数据库的诊断中,是作用相当大的设置。

总结

Oracle ADG上的列式存储支持

Oracle ADG上的列式存储支持Oracle ADG上的列式存储支持

Performance Schema作为MySQL推广已久的性能判断框架,如果足够信任的话,放大招 update performance_schema.setup_instruments set enable='yes' ,直接打开所有Performance Schema的可用选项,对性能有较大影响,不推荐全部打开。

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2017-04-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏码神联盟

Java常见缓存机制cache(集成spring使用)

今天我们首先来总结下cache,一步步消化,消化完了cache,然后在总结redis,冰冻三尺非一日之寒,技术亦如此。 1理解cache 在Ja...

3216
来自专栏杨建荣的学习笔记

一则备库CPU报警的思考(r7笔记第69天)

今天收到一封报警邮件,这引起了我的注意。当然过了一会,有收到了CPU使用率恢复的邮件。 报警邮件内容如下: ZABBIX-监控系统: ---------...

3053
来自专栏北京马哥教育

mysql slow log分析工具的比较

启用慢查询日志 mysql 中的 slow log 是用来记录执行时间较长(超过 long_query_time 秒)的 sql 的一种日志工具。 ...

3514
来自专栏皮振伟的专栏

[linux][memory]KSM技术分析

前言: 先来回顾一下Linux平台上的节约内存的方案: swap:通过LRU淘汰掉掉一部分page,把这些page交换到磁盘上。再次访问到这些page的时候,k...

3708
来自专栏Golang语言社区

Golang学习--GroupCache的使用

groupcache 是 Brad Fitzpatrick 最新的作品,目标在于取代一部分memcached的功能。以官方的说明是:groupcache ...

4279
来自专栏岑玉海

Hadoop源码系列(一)FairScheduler申请和分配container的过程

1、如何申请资源 1.1 如何启动AM并申请资源 1.1.1 如何启动AM val yarnClient = YarnClient.createYarnClie...

3863
来自专栏平凡文摘

11 个简单的 Java 性能调优技巧

1262
来自专栏数据和云

【视频】In Memory的内部结构和实现机制

小编寄语 罗马不是一日建成的。新特性5分钟系列视频,带你循序渐进学习Oracle12.2的最新特性,相约成长的路上,不见不散! { 本期话题 } In ...

3076
来自专栏温安适的blog

剖析1条JMS消息

3527
来自专栏技术博客

菜菜从零学习WCF二(设计和实现服务协定)

  服务是一个构造,它公开一个或多个终结点,其中每个终结点都公开一个或多个服务操作。

612

扫码关注云+社区