mysql 分析服务_MySQL分析服务器状态_MySQL

概述

文章简单介绍了通过一些查询命令分析当前服务器的状态。

目录

概述

获取服务器整体的性能状态

SQL操作计数

总结

步骤

获取服务器整体的性能状态

首先对一个数据库服务器进行性能优化需要先知道服务器当前主要的性能问题出现在哪里,在这点sql server也是类似,sql server首先会分析当前服务器的等待类型的情况。

我们可以使用show [session|global] status命令来获取想要的信息,默认是显示当前连接的所有统计参数值,还可以直接查询information_schema数据库中的session_status表。

show status;

#或者使用

use information_schema;

select * from SESSION_STATUS;

我当前的mysql版本是5.6.21,总共查询出了341行参数。

这里有一篇文章详细分析了每一个参数值的所代表的意思:http://blog.sina.com.cn/s/blog_68baf43d0100vu2x.html

SQL操作计数

接下来我们主要分析里面的com_参数,com_参数各种SQL对数据库执行的操作。

show status like 'com_%';

#或者使用

use information_schema;

select * from SESSION_STATUS WHERE variable_name like 'com_%';

144P2001W1X0-19457.jpg

各种SQL操作计数总共有142个,不同的版本结果不一样,接下来就来测试一下,表中的alter table的当前连接的操作次数为0,现在我修改一下表看看结果。

ALTER TABLE test ADD Name CHAR(10) NOT NULL;

show status like 'com_%';

144P2001Z3120-26242.jpg

可以看到alter_table计数增加了1。

com_计数里面有几个比较重要的参数,其它的一些参数也经常用来做参考。

com_delete:执行delete操作的次数。

com_select:执行select操作的次数。

com_insert:执行insert操作的次数,对应批量插入操作无论里面循环多少次都只算一次。

com_update:执行update操作的次数。

com_commit:执行事务提交的次数。

com_rollback:执行事务回滚的次数。

上面的计数包括所有的存储引擎,有几个参数是单独针对innodb存储引擎,记录了read,inserted,updated,deleted每种操作的行数。

show status like 'innodb_rows%';

#或者使用

use information_schema;

select * from SESSION_STATUS WHERE variable_name like 'innodb_rows%';

定位效率低的SQL语句

1.可以通过慢查询日志来定位,慢查询只能查询已经执行结束的语句,如果要查询当前正发生的问题无法做到,这个方法在后面一篇文章介绍mysql日志会详细介绍。

144P2001931250-36424.jpg

由于我将慢查询的时间设为0.01秒,所以超过这个值的都会记录下来,上面的截图就是慢查询日志里面的一条SQL操作记录,记录中记录了在什么时候执行的操作,执行操作的用户信息,执行花了0.19秒,锁花了0.001秒,返回了0行,查询了1行。

2.使用show processlist命令查询当前进行线程,该命令经常用来分析当前服务器的状况。

上图中有后四个字段需要理解,其中

144P2001956250-42Q0.jpg

command:记录了当前查询的一个状态,休眠(sleep),查询(query),连接(connect)。

Time:持续的时间,单位是秒,经常会使用这个值来做分析操作。

state:当前语句的状态,这个状态值很重要,这个状态值很多,大家可以去了解一下,上图就是等待表解锁。

info:记录操作语句

3.借助第三方监控工具

总结

文章的知识点涉及的内容其实很多,这里只是简单的写了一下,包括服务器里的很多状态都是很重要的,文章只是单单拿出了SQL操作的计数来讲,其它的一些包括connections,slow_queries,innodb_data_,innodb_buffer_pool_等等都是非常有用的一些计数,由于太多这里就没有全部拿出来分析,文章中也给出了一个连接介绍了其它的一些计数的含义。

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

TAG标签:状态服务器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526466.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python 接口测试 如何写配置文件_python接口自动化测试 - configparser配置文件解析器详细使用...

configparser简介ConfigParser模块已在Python 3中重命名为configparser该模块定义了ConfigParser类。 ConfigParser类实现一种基本的配置文件解析器语言,该语言提供的结构类似于 .ini 文件中的结构ini文件相关知识键值对可用 或者 : 进行分隔section 的名字是区分大…

java jdom 设置第1行_Java通过jdom操作生成XML文件的实例代码下载

工作需要,要生成xml文件,所以做了个小demo分享一下。看代码吧~ main()里面没什么好说的 该写的都写了public static void main(String[] args) {//调用 DocumentBuilderFactory.newInstance() 方法得到创建 DOM 解析器的工厂DocumentBuilderFactory fact…

java 对象工厂_Java设计模式之--工厂方式

在分析工厂模式之前,我们先看看普通模式下的Java三层结构。Controller(表现层)-Service(业务层)-Dao(持久层、数据库连接层),基于此三层结构完成JavaWeb相关业务。假设我们要完成的业务是添加员工信息,先创建Dao包,创建EmpDao接口和EmpDaoFac…

mysql 5.7 io 性能 aio_深入理解MySQL的InnoDB引擎

在MySQL中的引擎一文中说了,我们在几乎所有的情况下其实用的都是InnoDB引擎,这里我们就重点再看一下这个引擎,包括他的存储结构,线程模型和数据文件。我们可以通过show engine innodb status \G;(\G只是表示输出结果纵向表格输出)…

mysql构建数据立方体_OLAP数据建模工具Workbench的初步使用(数据立方体的建立)

OLAP数据建模工具Workbench的初步使用(数据立方体的建立)概要:1.workbench工具简介2.workbench简单操作(附demo)3.workbench初步使用总结1.workbench工具简介OLAP,(Online Analytical Processing,联机分析处理)。从事相关工作的小伙伴,具体的…

java循环1000000000_求十亿内所有质数的和,怎么做最快?

注:对知乎的公式编辑功能实在无力吐槽,用typora写的文章直接粘过来公式无法显示,只好又手工加上了全部公式,不过可能还是会有遗漏。大家可以点击这个链接 查看我的博客原文。以下是正文:第一次关注到这个问题是在做pro…

java飞行记录器是什么_运行java飞行记录器JFR(java flight recorder)

JFR上面讲到的工具都是作为快速的查看诊断工具的。如果要深入分析问题,可以选择使用内置的Java飞行记录器:Java Mission Control。转储JFR需要三步:1. 创建一个包含了你自己配置的JFR模板文件。运行jmc, 然后Window->Flight Recording Template Manag…

java申请安卓权限_java4android (包和访问权限)

什么是Java当中的软件包?为什么要使用软件包?如何给一个类打包?//将类放置到一个包中,需要使用package“包名”//打包 编译的方法 javac -d . Test.java//出现错误:编码GBK的不可映射字符 javac -encoding UTF-8 -d . …

php 条形码生成器,PHP条形码图像生成器

这是一个用于生成barocdes的简单PHP脚本://For displaying barcodes//Arguments are:// code Number you want outputted as a barcode//You can use this script in two ways:// From a webpage/PHP script // Directly in your web browser http://www.example.co…

java欧冠抽签,欧冠抽签吐槽:最大的“礼包”被C罗拿走!梅西出局概率超50%?...

欧冠16强抽签揭晓,结果:多特VS巴黎,皇马VS曼城,亚特兰大VS瓦伦西亚,马竞VS利物浦,切尔西VS拜仁,里昂VS尤文图斯,热刺VS莱比锡,那不勒斯VS巴萨。怎么评价这样的抽签呢&…

matlab 流固耦合,详讲流固耦合

引言近来,航空航天工业在世界上发展迅速,而作为“飞机心脏”的航空发动机是限制其发展的主要因素。目前,航空发动机日益向高负荷、高效率和高可靠性的趋势发展,高负荷导致的高逆压力梯度容易引起流动分离,同时随着科技…

php提示是否运行,php运行错误提示

第一种方法在php.ini文件里改变display_errors和error_reporting的值,没有的直接加上。; 第一处修改; display_errors Offdisplay_errors On; 第二处修改; error_reporting E_ALL & ~E_DEPRECATED & ~E_STRICTerror_reporting E_ALL | E_STRICTdisplay_…

usb转ttl模块与matlab,图文详解USB转TTL设备与电路板的连接

描述USB转TTL的硬件设备:USB转TTL主机一台;芯片选用PL-2303HXUSB转TTL刷机线,采用进口PL2303HX芯片。连接上电脑并安装驱动后,电脑即扩展出一个COM3或COM4....等的串口,配合相应软件就能对路由器、机顶盒或接收机等各种TTL接口的设备系统进行…

php乱码调试,NotePad++ 调试PHP代码中文显示乱码

最近在NotePad上调试PHP代码,按照示例代码进行调试,结果在显示中文的时候显示一堆乱码,于是上网百度,有2种方法可以解决:按调试方式有2种方法:1、菜单插件-NppExec:“插件”-“NppExec”-"Console Out…

php怎么设置网站的字符编码,php如何设置字符编码

php如何设置字符编码?a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charsetgb2312"),静态页面添加,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编…

oracle em 删除 重建,Oracle 11g 重建EM需要删除的对象

因为需求需要重建EM,重建时因为某些错误被迫停止,比如对象已存在、用户已经存在等,最终找出了创建必备的条件;1.环境变量(Oracle和Grid在同一个用户下安装):ORACLE_HOME 要设为DB路径;ORACLE_UNQNAME 要设置;2.删除em相关的同义词:select drop public synonym ||syn…

oracle导出数据视频教程,Oracle导入导出数据的几种方式

oracle导入导出数据1.导出dmp格式文件--备份某几张表 !!!!exp smsc/smsc file/data/oracle_bak/dmp/bakup0209_2.dmp tables\(send_msg_his,send_msg,recv_msg_his,recv_msg\)--备份整个数据库 !!&#xff…

php ldap 模块,不重新编译为PHP增加LDAP模块的支持

不重新编译为PHP增加LDAP模块的支持2018-11-28安装步骤1、进入到php安装源码目录rootvm-199:~/lnmp0.9# cd php-5.3.28rootvm-199:~/lnmp0.9/php-5.3.28# cd ext/ldap/rootvm-199:~/lnmp0.9/php-5.3.28/ext/ldap# lltotal 136drwxr-xr-x 3 501 staff 4096 2014-08-06 17:17 ./d…

linux qemu运行windows,用qemu搭建CentOS 6 for colinux虚拟系统——《Windows下搭建CentOS 6开发环境之一》...

用qemu搭建CentOS 6 for colinux虚拟系统一、安装的软硬件环境操作系统: Windows XP SP3硬件环境: CPU AMD 速龙AthlonII X3 445 (3.1GHz/AM3/3*512KB二缓/45纳米)内存 Corsair 海盗船 CMX4GX3M2A1600C9 DDR3 1600 4G(2G*2)硬盘 Seagate 希捷 ST3100052…

linux下c语言编程gedit,Ubuntu Linux下实现Gedit支持NesC语法高亮

在TinyOS下主要采用nesC编程,一种C语言的近亲。平时默认打开文本的工具是gedit,将以下代码保存为nesc.langtext/x-nc*.nc;*C.nc;*M.nc;*P.nc->///**/falsenewthistrueusingtaskpostnamespaceeventcommandmoduleimplementationconfigurationtypenamete…