mysql innodb的监控(系统层,数据库层)

2022-05-22 0 799

mysql innodb的监控(系统层,数据库层)

关于MySQL 的监控,mysql提供了数据采集的命令,比如show status命令或者读取数据库informat_schema的GLOBAL_STATUS对象;也可以用一些现成的监控工具进行查询,目前用的比较多的innotop、mysqlreport、mtop、mytop,还有淘宝perl语言研发的orzdba。

就监控的指标而言,有系统层面的,数据库层面的。

1、系统层面包括系统的load、cpu、内存是否有swap、磁盘IO如何、网络。

        vmstat -w 1

        iostat -x -k 1

        sar -n DEV 1

2、mysql数据库层

 show global status where Variable_name in('xxxx')或者show global status like 'xxx%'

     采集的数据一般是当前已经采集到的总数量,如果要计算每秒的数量,可以这样计算,以TPS为例

                 TPS=当前的Comm_commit-前面采集的Comm_Commit/时间间隔

    以下是主要的监控指标:

               1)Sql语句执行次数QPS——(Com_select、Com_insert、Com_update、Com_delete)

               2)事务TPS—-(Com_commit、Com_rollback)

               3)Row的状态(每秒增加修改删除的行数)—–(Innodb_rows_inserted、Innodb_rows_updated、Innodb_rows_deleted、Innodb_rows_read)

               4)Page 状态(buffer pool中的总页数、free、dirty、每秒flushed的page数量)—-(Innodb_buffer_pool_pages_flushed<page flush的数量>、Innodb_buffer_pool_pages_data<总的量>、Innodb_buffer_pool_pages_free<free的页数量>、Innodb_buffer_pool_pages_dirty<脏页数量>)

               5)查询缓存Hit(query cache hit率)—–(inno_buffer_pool_read_requests<逻辑读总次数>、Innodb_buffer_pool_reads<物理读总次数>)

               6)Data状态(内存buffer中数据每秒读、写次数,每秒读写大小M)—-(Innodb_data_reads<数据读总次数>、Innodb_data_writes<数据写的总次数>、Innodb_data_read<至此已经读的数据量>、Innodb_data_written<至此已经写的数据量>)

               7)Log(log_fsync每秒日志sync到磁盘的次数,log每秒写的大小M)—–(Innodb_os_log_fsyncs<向日志文件写的总次数>、Innodb_os_log_written<写入日志文件的字节数>)

               8)线程状态(每秒创建的线程数量)——(Threads_running<激活状态的线程数>、Threads_connected<当前打开的连接数量>、Threads_created<新建线程的数量>、Threads_cached<线程的缓存值>)

               9)每秒从客户端接受或者发送的数据量M—(Bytes_received、Bytes_sent)

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

免责声明:
1、本网站所有发布的源码、软件和资料均为收集各大资源网站整理而来;仅限用于学习和研究目的,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 不得使用于非法商业用途,不得违反国家法律。否则后果自负!

2、本站信息来自网络,版权争议与本站无关。一切关于该资源商业行为与www.niceym.com无关。
如果您喜欢该程序,请支持正版源码、软件,购买注册,得到更好的正版服务。
如有侵犯你版权的,请邮件与我们联系处理(邮箱:skknet@qq.com),本站将立即改正。

NICE源码网 MySql mysql innodb的监控(系统层,数据库层) https://www.niceym.com/52423.html