mysql必要的监控项目--转自土豆大神的博客

SHOW STATUS;
FLUSH STATUS;

查看当前连接数 SHOW STATUS LIKE ‘Thread_%‘;
Thread_cached:被缓存的线程的个数
Thread_running:处于激活状态的线程的个数
Thread_connected:当前连接的线程的个数
Thread_created:总共被创建的线程的个数

Thread cache hits 
Thread_connected = SHOW GLOBAL STATUS LIKE Thread_created;
Connections = SHOW GLOBAL STATUS LIKE ‘Connections‘;
TCH=(1 - (Threads_created / Connections)) * 100

查看活动连接内容
SHOW PROCESSLIST;

如果 TCH数小于90%,创建连接耗费了时间,增大Thread_cached数量

QPS
Questions = SHOW GLOBAL STATUS LIKE ‘Questions‘;
Uptime = SHOW GLOBAL STATUS LIKE ‘Uptime‘;
QPS=Questions/Uptime 

TPS
Com_commit = SHOW GLOBAL STATUS LIKE ‘Com_commit‘;
Com_rollback = SHOW GLOBAL STATUS LIKE ‘Com_rollback‘;
Uptime = SHOW GLOBAL STATUS LIKE ‘Uptime‘;
TPS=(Com_commit + Com_rollback)/Uptime

QPS 和 TPS值一定要实时监控,如果接近架构搭建时的测试峰值,愿上帝与你同在

Read/Writes Ratio
Qcache_hits = SHOW GLOBAL STATUS LIKE ‘Qcache_hits‘;
Com_select = SHOW GLOBAL STATUS LIKE ‘Com_select‘;
Com_insert = SHOW GLOBAL STATUS LIKE ‘Com_insert‘;
Com_update = SHOW GLOBAL STATUS LIKE ‘Com_update‘;
Com_delete = SHOW GLOBAL STATUS LIKE ‘Com_delete‘;
Com_replace = SHOW GLOBAL STATUS LIKE ‘Com_replace‘;
R/W=(Com_select + Qcache_hits) / (Com_insert + Com_update + Com_delete + Com_replace) * 100

读写比,优化数据库的重要依据,读的多就去优化读,写的多就去优化写

Slow queries per minute
Slow_queries = SHOW GLOBAL STATUS LIKE ‘Slow_queries‘;
Uptime = SHOW GLOBAL STATUS LIKE ‘Uptime‘;
SQPM=Slow_queries / (Uptime/60)

Slow queries /Questions Ratio
Slow_queries = SHOW GLOBAL STATUS LIKE ‘Slow_queries‘;
Questions = SHOW GLOBAL STATUS LIKE ‘Questions‘;
S/Q=Slow_queries/Questions 

新版本上线时要着重关注慢查询,让测试去踢开发者的屁股吧

Full_join per minute
Select_full_join = SHOW GLOBAL STATUS LIKE ‘Select_full_join‘;
Uptime = SHOW GLOBAL STATUS LIKE ‘Uptime‘;
FJPM=Select_full_join / (Uptime/60)

没有使用索引而造成的full_join,优化索引去吧

Innodb buffer read hits
Innodb_buffer_pool_reads = SHOW GLOBAL STATUS LIKE ‘Innodb_buffer_pool_reads‘;
Innodb_buffer_pool_read_requests = SHOW GLOBAL STATUS LIKE ‘Innodb_buffer_pool_read_requests‘;
IFRH=(1 - Innodb_buffer_pool_reads/Innodb_buffer_pool_read_requests) * 100

InnoDB Buffer命中率 目标 95%-99%;

Table Cache
Open_tables= SHOW GLOBAL STATUS LIKE ‘Open_tables‘;
Opened_tables= SHOW GLOBAL STATUS LIKE ‘Opened_tables‘;
table_cache= SHOW GLOBAL STATUS LIKE ‘table_cache‘;

table_cache应该大于 Open_tables 小于 Opened_tables 

Temp tables to Disk ratio

Created_tmp_tables = show global status like ‘Created_tmp_tables‘;
Created_tmp_disk_tables = show global status like ‘Created_tmp_disk_tables‘;

TDR=(Created_tmp_disk_tables/Created_tmp_tables)*100

SHOW GLOBAL STATUS LIKE ‘Innodb_row_lock_%‘;

Innodb_row_lock_current_waits

The number of row locks currently being waited for. Added in MySQL 5.0.3.

Innodb_row_lock_time

The total time spent in acquiring row locks, in milliseconds. Added in MySQL 5.0.3.

Innodb_row_lock_time_avg

The average time to acquire a row lock, in milliseconds. Added in MySQL 5.0.3.

Innodb_row_lock_time_max

The maximum time to acquire a row lock, in milliseconds. Added in MySQL 5.0.3.

Innodb_row_lock_waits

The number of times a row lock had to be waited for. Added in MySQL 5.0.3.
时间: 2024-10-12 23:27:30

mysql必要的监控项目--转自土豆大神的博客的相关文章

C#项目中使用 Selenium + PhantomJS 模拟登录博客园

Selenium selenium 是一个web的自动化测试工具,不少学习功能自动化的同学开始首选selenium PhantomJS PhantomJS是一个基于webkit的javascript API.它使用QtWebKit作为它核心浏览器的功能,使用webkit来编译解释执行JavaScript代码.任何你可以在基于webkit浏览器做的事情,它都能做到.它不仅是个隐形的浏览器,提供了诸如CSS选择器.支持Web标准.DOM操作.JSON.html5.Canvas.SVG等,同时也提供了

JavaWeb项目开发案例精粹-第4章博客网站系统-005action层

1. 1 package com.sanqing.action; 2 3 import java.util.Date; 4 import java.util.Map; 5 6 import com.opensymphony.xwork2.ActionContext; 7 import com.opensymphony.xwork2.ActionSupport; 8 import com.sanqing.po.Article; 9 import com.sanqing.service.Articl

JavaWeb项目开发案例精粹-第4章博客网站系统-004Service层

1. 1 package com.sanqing.service; 2 3 import java.util.List; 4 5 import com.sanqing.fenye.Page; 6 import com.sanqing.fenye.Result; 7 import com.sanqing.po.Article; 8 9 public interface ArticleService { 10 //进行文章的保存 11 public void addArticle(Article a

JavaWeb项目开发案例精粹-第4章博客网站系统-006View层

1.showAllArticle.jsp 1 <%@ page language="java" contentType="text/html; charset=gb2312" 2 pageEncoding="gb2312"%> 3 <%@taglib uri="/struts-tags" prefix="s"%> 4 <!DOCTYPE html PUBLIC "-/

IOS 《我连网》项目总结积累的一些有用的博客连接(价值连城呀!后续还会更新此贴)

一:IOS开发系列--通知与消息机制 (里面涉及到本地通知的写法和推送的相关信息) http://www.cnblogs.com/kenshincui/p/4168532.html 二:这里面有PAW的下载地址和使用说明 链接: http://pan.baidu.com/s/1gdzmjq7 密码: 3mpb 三:IOS开发之视频,音频,录像 http://www.cnblogs.com/kenshincui/p/4186022.html 四:iOS应用中通过设置VOIP模式实现休眠状态下soc

JavaWeb项目开发案例精粹-第4章博客网站系统-001设计

1. 2. 3. 1 # MySQL-Front 5.0 (Build 1.0) 2 3 /*!40101 SET @[email protected]@SQL_MODE */; 4 /*!40101 SET SQL_MODE='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */; 5 /*!40111 SET @[email protected]@SQL_NOTES */; 6 /*!40103 SET SQL_

一款基于vue.js 和node构建个人博客项目

前言 本项目是一款个人学习的博客项目,主要是为了学习vue2 和 node.js.另外涉及到MySQL redis nginx 等技术栈知识 项目地址 预览地址 (PC或者手机) > 注意:PC端支持markdown编辑博客,但是手机端不支持编辑,仅支持查看博客内容 博客预览地址:node后台版本 预览账号 账号:test 密码:123 技术栈 前端:html.css.sass.ES6.webpack.vue-cli.vue2.vuex.vue-router.axios.element-ui 后

文顶顶iOS开发博客链接整理及部分项目源代码下载

文顶顶iOS开发博客链接整理及部分项目源代码下载 网上的iOS开发的教程很多,但是像cnblogs博主文顶顶的博客这样内容图文并茂,代码齐全,示例经典,原理也有阐述,覆盖面宽广,自成系统的系列教程却很难找.如果你是初学者,在学习了斯坦福iOS7公开课和跟着文顶顶的博客做项目之后,最快只需要2个月时间,就基本可以独立完成iOS App的开发工作.有经验的开发者也可以在该博客中寻找代码片段进行学习借鉴,必有所收获. 在此也向@文顶顶 表示严重感谢! 由于文顶顶博客博文繁多,每次找文章需要频繁的翻页,

Python课程的期末项目--实现了一个及其简单的个人博客系统

目录 1. 项目简介 1.1 本项目博客地址 1.2 项目的的功能与特色 1.3 项目采取的技术栈 1.4 项目借鉴源代码的github地址或博客地址 1.5 团队成员任务分配表 2. 前期调查与需求分析 3. 项目功能架构图.主要功能流程图 4. 系统模块说明 4.1 系统中包含的模块列表 4.2 系统各模块详细描述 4.2.1 分页功能 4.2.2 标签功能 5.项目总结 5.1 系统特点 5.2 系统不足与可改进的地方 1. 项目简介 1.1 本项目博客地址 https://www.cnb