一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就来谈谈关于软件测试中的“Mysql对服务器状态的监控,如何配置文件”。
一、服务器状态的监控。
MYSQL提供了一些相关的命令来查看当前服务器的信息。
(1)线程和连接数
SHOW STATUS LIKE '%conn%'
SHOW STATUS LIKE '%abort%'
SHOW STATUS LIKE '%thread%'
SHOW STATUS LIKE '%bytes%'
connections:表示连接数,如果客户端在不断的发送请求,但是mysql数据库的连接数明显没有增长或者增长很慢,那么很多可能是MYSQL数据库的连接数不够,此时正常需要修改MYSQL的连接数。
aborted_connects:表示失败的连接数,客户端向服务器发送的连接数失败 aborted_clients:表示客户端应用程序出现错误,导致不能正常关闭连接。
(2)二进制文件信息
SHOW STATUS LIKE '%binlog%'
显示二进制文件缓存的数据
(3)统计计数器
显示相关的统计信息
SHOW STATUS LIKE '%com_%'
如
SHOW STATUS LIKE '%com_sele%'
(4)临时文件和表的情况
SHOW STATUS LIKE '%tmp%'
显示创建的临时文件和临时表的数据
(5)select语句执行的情况
SHOW STATUS LIKE '%select%'
二、配置文件
配置文件中常见的选项内容:
default-storage-engine
表示默认的存储引擎
max_connections
表示允许最大的并发连接数,正常情况下这个值越大越好,但是如果过大,会让CPU无法处理,这些连接数会占用大缓存区。
back_log
相于队列长度,如果连接数超过max_connections,就将连接放入堆栈中,如果堆栈还是不够使用,那么客户端请求会被直接拒绝。
max_connect_errors
如果某台主机对服务器进行访问,如果出现错误的次数越过max_connect_errors,那么这台主机将会被禁访问服务器,如果需要解禁使用FLUSH HOST命令。
query_cache_size
表示查询缓存的大小,即查询缓存最多可以多少结果数据。
影响判断缓存大小是否够的两个参数:Qcache_free_memory和Qcache_hits
如果Qcache_free_memory这个值很少,就说明查询缓存可能太小了,应该做设置大些
Qcache_hits表示缓存命中率,如果这个值很大说明重复率很高,那么可以将查询缓存值设置大些。
query_cache_limit
表示单个查询所占的缓存大小,默认为1M。
open_fifiles_limit
表示最多可以允许的打开文件描述符
table_open_cache
表示将打开表的数据放在缓存中,如果在缓存中找不到需要的数据才会到磁盘读书。
tmp_table_size
表示临时表的大小,如果临时的数据大于这个值,那么将存储将对磁盘进行操作。
read_buffffer_size
mysql读入缓存的大小
join_buffffer_size
表示使用join查询时,缓存的大小
thread_cache_size
表示缓存中最多可以允许的线程数,如果连接未断开,后面发送的请求,会直接在缓存找到线程处理,不用重新增加新的线程。
今天关于“数据库中的数据结构以及查询过程”就学习到这里了,每个工作日小编都会更新一个小知识,希望大家多多关注我们,一起来学习喔!