QPS = Questions(or Queries) / seconds
mysql >show global status like 'Question%'
(2)TPS(每秒事务量)
TPS = (Com_commit + Com_rollback) / seconds
mysql >show global status like 'Com_commit'
mysql >show global status like 'Com_rollback'
(3)key Buffer 命中率
mysql>show global status like 'key%'
key_buffer_read_hits = (1-key_reads / key_read_requests) * 100%
key_buffer_write_hits = (1-key_writes / key_write_requests) * 100%
(4)InnoDB Buffer命中率
mysql>show status like 'innodb_buffer_pool_read%'
innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100%
(5)Query Cache命中率
mysql>show status like 'Qcache%'
Query_cache_hits = (Qcahce_hits / (Qcache_hits + Qcache_inserts )) * 100%
(6)Table Cache状态量
mysql>show global status like 'open%'
比较 open_tables 与 opend_tables 值
(7)Thread Cache 命中率
mysql>show global status like 'Thread%'
mysql>show global status like 'Connections'
Thread_cache_hits = (1 - Threads_created / connections ) * 100%
(8)锁定状态
mysql>show global status like '%lock%'
Table_locks_waited/Table_locks_immediate=0.3% 如果这个比值比较大的话,说明表锁造成的阻塞比较严重
Innodb_row_lock_waits innodb行锁,太大可能是间隙锁造成的
(9)复制延时量
mysql >show slave status
查看延时时间
(10) Tmp Table 状况(临时表状况)
mysql >show status like 'Create_tmp%'
Created_tmp_disk_tables/Created_tmp_tables比值最好不要超过10%,如果Created_tmp_tables值比较大,
可能是排序句子过多或者是连接句子不够优化
(11) Binlog Cache 使用状况
mysql >show status like 'Binlog_cache%'
如果Binlog_cache_disk_use值不为0 ,可能需要调大 binlog_cache_size大小
(12) Innodb_log_waits 量
mysql >show status like 'innodb_log_waits'
Innodb_log_waits值不等于0的话,表明 innodb log buffer 因为空间不足而等待
比如命令:
>#show global status
虽然可以使用:
>#show global status like %...%
来过滤,但是对应长长的list,每一项都代表什么意思,还是有必要弄清楚
测试mysql5.7和mysql8.0 分别在读写、只读、只写模式下不同并发时的性能(tps,qps)
机器
myql5.7.22
mysql8.0.15
sysbench
mysql5.7和mysql8.0 在读写模式下的表现
双1 配置,读写模式下,mysql5.7.22 和mysql8.0.15 tps 、qps 性能差不多,mysql8.0.15 在120 线程并发时,性能出现了下降抖动:
mysql5.7和mysql8.0 在只读模式下的表现
双1 配置,只读模式下,mysql5.7.22 的tps、qps比mysql8.0.15 好1/3 左右;并发线程数增加后,tps、qps并没有随着增加,反而出现了下降的趋势:
mysql5.7和mysql8.0 在只写模式下的表现
双1 配置,只写模式下,随着并发数的上升,mysql5.7.22 的性能比mysql8.0.15 好1/4左右
mysql5.7和mysql8.0 在读写模式下的表现
0 2配置,读写模式下,并发数低时,mysql5.7.22性能好于mysql8.0.15并发数比较高时,mysql8.0.15 性能好于mysql5.7.22;在80 线程的并发以上时,性能开始下降
mysql5.7和mysql8.0 在只读模式下的表现
0 2配置,只读模式下,mysql5.7.22性能比mysql8.0.15 好1/3左右;随着并发数的上升,性能也没有上升,反而有下降的趋势
mysql5.7和mysql8.0 在只写模式下的表现
注意
sysbench 需要设置--db-ps-mode=disable 禁用预编译语句,不然并发测试线程多时会报下面的错误
使用脚本
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)