Mysql服务器监控

管理MySql服务器属于应用程序监控范畴。这是因为绝大多数性能参数是有MySql软件产生的,而不属于主操作系统的一部分。

如当前所提到的,应该总是先监控基础操作系统,然后监控MySql,以为MySql对主机的操作系统很敏感。

如何显示MySql性能

可以使用两种机制来管理和监控MySql服务器的运行情况。使用服务器变量来控制其运行情况,并使用服务器状态变量读取其运行情况配置和关于功能和性能的统计信息。

服务器中有很多配置变量。有些变量只能在启动时设置(启动选项)。其他的一些变量可以被设置成适用于全局级(对于所有连接有效)、会话级别(单个连接)或同时适用于全局和会话两个级别。

会话变量只是在当前连接中生效,在连接关闭是被重置。

可以使用以下命令读取服务器变量:

  SHOW [GLOBAL | SESSION] VARIABLES;

可以使用以下命令更改非静态(只读)变量(可以用“,”分隔符在一条命令上同时进行多个变量的设置):

  SHOW [GLOBAL | SESSION] <variable_name> = <value>;

  SET [@@global. | @@session. | @@] <variable_name> = <value>;

可以使用以下命令读取状态变量。前两条命令显示所有会话或会话范围(默认情况下是会话)的变量值。第三条命令显示全局范围的变量:

  SHOW STATUS;

  SHOW SESSION STATUS;

  SHOW GLOBAL STATUS;

性能监控

MySql的性能监控是前面命令的应用。具体而言,就是设置和读取系统变量及读取状态变量。SHOW和SET命令是仅有的两个可以用于MySql服务器的工具。

Sql命令

所有Sql的监控命令都是SHOW命令的变体。他们显示系统及其子系统的内部信息。虽然SHOW命令的形式很多,以下命令列表是在监控MySql服务器时使用最多的SQL命令:

• SHOW INDEX FROM <TABLE>

  显示指定表的索引基数统计信息,在优化程序中使用它评估连接选择性(既索引列中非重复值)。这个命令有助于诊断性能低下的查询,尤其是查询是否使用了可用的索引。

• SHOW PLUGINS

  显示所有已知插件的列表。它显示插件的名称和当前状态。MySql最新发布版中的存储引擎是以插件形式实现的。使用这个命令获取当前可用插件及其状态的快照。

• SHOW [FULL ] PROCESSLIST

  显示系统上运行的所有线程(包括连接)。这个命令的主操作系统的进程命令类似。显示的信息包括命令执行时的连接数据、执行时间和当前状态。像操作系统命令一样,它可以诊断不良的响应(太多线程)、僵尸进程,

或者甚至诊断连接问题。当在处理低性能或未响应的线程时,使用KILL命令终止它们。默认行为是显示当前用户的进程。命令中使用FULL关键字则显示所有进程。

限定SHOW命令的输出结果

SHOW SESSION STATUS LIKE '%LOG%'

与存储引擎相关的命令如下:

• SHOW ENGINE <engine_name> LOGS

  显示指定存储引擎的日志信息,这些信息是由存储引擎提供的,且在优化存储引擎时是非常有用的,有些存储引擎不提供这些信息。

• SHOW ENGINE <engine_name> STATUS

  显示指定存储引擎的状态信息,这些信息是存储引擎提供的。有些存储引擎比其他的存储引擎提供更多或更少的信息。例如,InnoDB 存储引擎显示很多状态变量,而NDB存储引擎只显示少许的状态变量。MyISAM存储引擎则不显示任何信息。这个命令是查看一个给定的存储引擎的统计信息的基本方法,且它在优化某些存储引擎时非常重要。

• SHOW ENGINES

  显示MySql发行版的所有可用存储引擎的列表及其状态(入存储引擎是否可用)。这个命令有助于决定在数据上使用何种存储引擎,并有助于决定复制过程中是否在Master和Slave上存在相同的存储引擎。

与MySql复制相关的具体命令如下所示:

SHOW BINLOG EVENTS [IN <'log_file'>] [FROM <pos>] [LIMIT [<OFFSET>,]<ROW COUNT>]

show binlog events in 'mysql-bin.000009' from 4 limit 0 ,12 ; 查看mysql-bin.000009'二进制文件 从第4个位置开始 查看12行事件。

SHOW BINARY LOGS

  显示服务器上的二进制列表。使用这个命令获取过去和当前的binlog文件名的相关信息。每个文件的大小也被显示出来了。他是诊断复制问题的另一个有用的命令,因为它将允许你在指定的文件上使用SHOW BINLOG EVENTS命令

,从而减少在诊断问题是必须查看的数据量。SHOW MASTER LOGS是它的同义词.

SHOW RELAYLOG EVENTS [IN <'log_file'>] [FROM <pos>] [LIMIT [<OFFSET>,]<ROW COUNT>]

mysql> show relaylog events in 'slave-relay-bin.000038' from 4 limit 0 ,12 ;

SHOW MASTER STATUS

  显示Master的当前配置。它显示当前二进制日志文件、文件的当前位置和所有的排他性或包容性复制的设置。当连接或重新连接Slave时使用这个命令.

SHOW SLAVE STATUS

  使用-- report-host 选项显示连接到Master的Slave列表,根据这个列表可以确定哪些Slave链接到Master上。

 

监控mysql的更多相关文章

  1. 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  2. Zabbix监控mysql performance

    介绍 zabbix监控mysql性能,使用zabbix自带的mysql监控模板,可以监控以下内容OPS(增删改查).mysql慢查询数量.mysql请求\响应流量带宽 配置 新建mysql监控用户 G ...

  3. 监控mysql各种选项

    安装mysql之后,需要对mysql服务进行监控.   nagios开源自带的check_mysql 对 mysql 的slave 机监控倒是不错.但是对数据库主机监控就略显不足了.   使用一个监控 ...

  4. zabbix通过第三方插件percona监控mysql数据库

     zabbix通过第三方插件percona监控mysql数据库                                                                     ...

  5. zabbix利用自带的模板监控mysql数据库

    zabbix利用自带的模板监控mysql数据库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 有些东西你不会的时候觉得它特别难,但是当你去做的时候就发现如此的简单~zabbix功能 ...

  6. 详解 Spotlight on MySQL监控MySQL服务器

    前一章详解了Spotlight on Unix 监控Linux服务器 ,今天再来看看Spotlight on MySQL怎么监控MySQL服务器. 注:http://www.cnblogs.com/J ...

  7. cacti监控mysql

    cacti监控mysql 2013-09-25 16:21:43 分类: LINUX 原文地址:cacti监控mysql 作者:baochenggood cacti监控mysql 1 下载cacti监 ...

  8. zabbix 监控MySQL

    现在我来说一下我的监控环境 zabbix-3.0.3 MySQL-5.6.23 1.首先我们要登录MySQL,创建一个监控MySQL的用户 GRANT USAGE,PROCESS,SUPER,REPL ...

  9. shell脚本监控MySQL服务是否正常

    监控MySQL服务是否正常,通常的思路为:检查3306端口是否启动,ps查看mysqld进程是否启动,命令行登录mysql执行语句返回结果,php或jsp程序检测(需要开发人员开发程序)等等: 方法1 ...

  10. Zabbix通过percona监控MySQL

    因为Zabbix自带的MySQL监控没有提供可以直接使用的Key,所以一般不采用,业界的同学们都使用Percona Monitoring Plugins 监控 MySQL的方式 Percona介绍 P ...

随机推荐

  1. c#坐标系互相转换

    转自群友的博客:https://www.xiaofengyu.com/?p=108 群友的github地址:https://github.com/jfwangncs/GPSConvert  各种坐标系 ...

  2. idea构建spring源码阅读环境

    注:由于文章不是一次性完成,下文中的test1目录和test目录应为同一个目录. (一)安装git和Gradle Spring项目托管在github之上,基于Gradle来构建项目.所以要想搭建Spr ...

  3. 使用Skaffold一键将项目发布到Kubernetes

    当前skaffold版本为v0.4,还未发布正式版本,不建议在生产环境中使用: skaffold用于开发人员快速部署程序到Kubernetes中:skaffold提供了dev.run两种模式:使用sk ...

  4. JS DOM事件学习

    DOM查找方法: document.getElementByID("id") document.getElementsByTagName("tag") 返回一个 ...

  5. node07

    ---恢复内容开始--- 1.SQL基本查询语句 2.子句 1)WHERE 子句 WHERE key=val WHERE key>val WHERE key1>val1 AND key2& ...

  6. this全解js

    转(掘金) this关键字是JavaScript中最复杂的机制之一,是一个特别的关键字,被自动定义在所有函数的作用域中,但是相信很多JavaScript开发者并不是非常清楚它究竟指向的是什么.听说你很 ...

  7. Expedition---POJ - 2431

    A group of cows grabbed a truck and ventured on an expedition deep into the jungle. Being rather poo ...

  8. swust oj 1010

    折半查找的实现 1000(ms) 10000(kb) 2877 / 11213 编写程序实现折半查找算法. 输入 第一行是查找表的长度n 第二行是查找表中的数据元素 : 第三行是要查找的数据元素的关键 ...

  9. 实验五:任意输入10个int类型数据,排序输出,并找出素数

    源代码: package 数组;import java.util.*;public class vvv { public static void main(String[] args) { Scann ...

  10. Python 爬虫利器 Selenium

    前面几节,我们学习了用 requests 构造页面请求来爬取静态网页中的信息以及通过 requests 构造 Ajax 请求直接获取返回的 JSON 信息. 还记得前几节,我们在构造请求时会给请求加上 ...