4、脏页的量监控
- mysql> show global status like '%dirty%';
- +--------------------------------+-------+
- | Variable_name | Value |
- +--------------------------------+-------+
- | Innodb_buffer_pool_pages_dirty | 0 | #当前buffer pool中脏页的数量
- | Innodb_buffer_pool_bytes_dirty | 0 | #当前buffer pool中脏页的总字节数
- +--------------------------------+-------+
- 2 rows in set (0.01 sec)
-
- mysql> show global status like 'i%total%';
- +--------------------------------+-------+
- | Variable_name | Value |
- +--------------------------------+-------+
- | Innodb_buffer_pool_pages_total | 8192 | #buffer pool中数据页总量
- +--------------------------------+-------+
- 1 row in set (0.01 sec)
关注比值:Innodb_buffer_pool_pages_dirty / Innodb_buffer_pool_pages_total,脏页占比
通过比值看脏页是否多,比如脏页10%的话,可以判断系统可能不是写为主的系统。
5、写性能瓶颈
- mysql> show global status like '%t_free';
- +------------------------------+-------+
- | Variable_name | Value |
- +------------------------------+-------+
- | Innodb_buffer_pool_wait_free | 0 |
- +------------------------------+-------+
- 1 row in set (0.01 sec)
-
- mysql> show global status like '%g_waits';
- +------------------+-------+
- | Variable_name | Value |
- +------------------+-------+
- | Innodb_log_waits | 0 |
- +------------------+-------+
- 1 row in set (0.00 sec)
说明:
Innodb_buffer_pool_wait_free,如果该值大于0,说明buffer pool中已经没有可用页,等待后台往回刷脏页,腾出可用数据页,这样就很影响业务了,hang住。
Innodb_log_waits,如果该值大于0,说明写压力很大,出现了日志等待。如果Innodb_log_waits状态变量(等待日志缓冲刷出的次数)的值比较高,而且继续增长,可以增大log buffer或者降低事务大小。
6、系统真实负载:rows增删改查 、事务提交、事务回滚
- mysql> show global status like 'i%rows%';
- +----------------------+-------+
- | Variable_name | Value |
- +----------------------+-------+
- | Innodb_rows_deleted | 0 |
- | Innodb_rows_inserted | 145 |
- | Innodb_rows_read | 233 |
- | Innodb_rows_updated | 5 |
- +----------------------+-------+
- 4 rows in set (0.01 sec)
-
- mysql> show global status like '%commit%';
- +----------------+-------+
- | Variable_name | Value |
- +----------------+-------+
- | Com_commit | 0 |
- | Com_xa_commit | 0 |
- | Handler_commit | 16 |
- +----------------+-------+
- 3 rows in set (0.01 sec)
-
- mysql> show global status like '%rollback%';
- +----------------------------+-------+
- | Variable_name | Value |
- +----------------------------+-------+
- | Com_rollback | 0 |
- | Com_rollback_to_savepoint | 0 |
- | Com_xa_rollback | 0 |
- | Handler_rollback | 0 |
- | Handler_savepoint_rollback | 0 |
- +----------------------------+-------+
- 5 rows in set (0.01 sec)
通过监控系统真实负载,如果业务正常,负载上升,此时,就要根据业务具体情况,进行相应的调优。
二、写压力调优参数
通过调整参数降低写压力时,一定要实时关注iostat系统的各项指标。 (编辑:晋中站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|