美文网首页
MySQL之普通项目监控

MySQL之普通项目监控

作者: 君子愁 | 来源:发表于2019-10-26 23:01 被阅读0次

对mysql的一些普通的项目进行监控

1.监控mysql进程和端口

ps -ef|grep mysqld

netstat -lntup|grep mysqld

2.监控mysql是否可连接

本地socket连接

/usr/local/mysql/bin/mysql  -uroot -p123456 -S /tmp/socket.sock

tcp连接

mysqladmin -uroot -p123456 -h 192.168.209.131 ping #检测mysql是否可连接

telnet  ip  mysql端口    #检测mysql是否可连接

3.监控mysql的可读可写

连接数据库后,执行select @@version(); #检测数据是否可读

连接数据库后,查看read-only参数是否off

连接数据库后,可创建一个监控库,专门写入数据的,测试数据库是否可写

4.监控QPS(1s查询次数)和TPS(1s事务数)

show global status like 'queries';   #查询mysql启动到现在一共进行了多少次查询

QPS = (Q2 - Q1) / Q2和21之间的时间差

show global status like '%com_commit%';  #查询mysql启动到现在一共进行了多少次事务

show global status like '%com_rollback%';   #查询mysql启动到现在一共进行了多少次事务回滚

TPS = (Com_commit + Com_rollback) / Seconds

show global status like 'uptime';    #查看数据库启动到现在启动了多长时间

5.查看并发连接数量

show variables like 'max_connectins'; #查看数据库最大连接数

show global status like 'Threads_connected'; #查看当前连接线程数是多少

show global status like 'Threads_running';   #查看有多少个线程连接是正在运行的,因为很多线程连接可能是连接上了,但是是sleep的

6.查看阻塞

#查询被阻塞语句(5.7)---通过下面这个语句可查出哪些语句被阻塞了,但是查询不到被那些语句阻塞了它们

SELECT b.trx_mysql_thread_id            AS 'blocked_thread_id'

      ,b.trx_query                      AS 'blocked_sql_text'

      ,c.trx_mysql_thread_id            AS 'blocker_thread_id'

      ,c.trx_query                      AS 'blocker_sql_text'

      ,( Unix_timestamp() - Unix_timestamp(c.trx_started) )

                              AS 'blocked_time'

FROM  information_schema.innodb_lock_waits a

    INNER JOIN information_schema.innodb_trx b

        ON a.requesting_trx_id = b.trx_id

    INNER JOIN information_schema.innodb_trx c

        ON a.blocking_trx_id = c.trx_id

WHERE  ( Unix_timestamp() - Unix_timestamp(c.trx_started) ) > 4;

#查询阻塞语句(5.7)---倒数第二句的c.id=125的125来自第一句语句,查询出正在阻塞的语句是什么。但是这个不准的,因为一个事务里有很多语句,可能第一个语句阻塞了,过了几秒钟,第一个语句执行完了,然后执行第二个语句,第二个语句也阻塞,此时用下面的语句查询源阻塞语句,只会查询到第二句阻塞语句,所以不够准确。

SELECT a.sql_text,

      c.id,

      d.trx_started

FROM  performance_schema.events_statements_current a

      join performance_schema.threads b

        ON a.thread_id = b.thread_id

      join information_schema.processlist c

        ON b.processlist_id = c.id

      join information_schema.innodb_trx d

        ON c.id = d.trx_mysql_thread_id

where c.id=125

ORDER  BY d.trx_started\G;

7.监控主从是否正常

show slave status\G

查看

Slave_IO_Running: Yes

 Slave_SQL_Running: Yes

这两个进程都是yes,说明同步线程正常

查看

Seconds_Behind_Master: 0

要是等于0说明主从延时很小

或者查看

Exec_Master_Log_Pos: 234 =  Read_Master_Log_Pos: 234

那么说明主从延时很小

相关文章

  • MySQL之普通项目监控

    对mysql的一些普通的项目进行监控 1.监控mysql进程和端口 ps -ef|grep mysqld nets...

  • Linux下Zabbix监控之MySQL监控添加

    Mysql数据库监控 zabbix页面添加Mysql监控默认模板 创建mysqladmin链接配置 Mysql监控...

  • 2018-10-23

    搭建Grafana+Prometheus 监控mysql Grafana+Prometheus 系统监控MySql...

  • 4.5监控项目工作-转自石志国

    PMP®考点解析之4.5监控项目工作 监控项目工作是跟踪、审查和报告整体项目进展,以实现项目管理计划中确定的绩效目...

  • Zabbix监控MySQL的问题

    首先在zabbix的web页面上启用MySQL监控模板被监控端的mysql需要添加zabbix账号 被监控端需要创...

  • MySQL:6.Percona Monitoring and M

    title: MySQL:6.Percona Monitoring and Management监控MySQL性能...

  • 【zabbix】zabbix3.4.7+percona监控MyS

    在zabbix自带的MySQL监控模板中只有14项监控项,这对于MySQL的性能监控来说是远远不够的,在网上看到一...

  • 分享两款免费的MySQL性能监控工具

    MySQL管理和性能监控工具,能帮助你监控MySQL服务器,以及微调其性能和速度。众所周知,MySQL是功能强大的...

  • 项目管理之监控

    紧急汇报直面问题、常规周报简明扼要、数据透明直观清晰。 紧急汇报 紧急汇报:直面问题有章法。紧急报告:在项目发生突...

  • Mac同时安装5.6和5.7

    背景 同时开发多个项目,老项目使用的是mysql5.6,新项目用的mysql5.7版本,通过homebrew安装之...

网友评论

      本文标题:MySQL之普通项目监控

      本文链接:https://www.haomeiwen.com/subject/rtbuvctx.html