立即学习:https://edu.csdn.net/course/play/10084/221706?utm_source=blogtoedu
MySQL状态变量
作用:反映当前mysql数据库服务器自当次启动以来的累计相关状态信息,如SQL执行效率,缓存使用情况,锁资源使用情况。
全局状态变量(208个)
会话状态变量(211个)
会话状态变量为当前会话对系统资源的使用情况,有些状态变量无会话级,查看时会显示系统级状态变量。
注:状态变量不可人为修改,由系统自动修改,mysqld重启丢失
注:任意状态变量在未使用global关键字时,缺省为会话级别变量,对于无会话级别变量,无论是否指定global或者session,都显示为系统级别变量。
状态变量查看方法
show方式
show [GLOBAL | SESSION ] STATUS [LIKE 'pattern' |WHERE expr]
系统表
SELECT * FROM global_status | session_status WHERE VARIABLE_NAME LIKE '%pattern%'
mysqladmin extended-status方式
mysqladmin -uroot -pxxx extended-status | grep Connections
从系统表查看
performance_schema.session_status
performance_schema.global_status
重置状态变量统计信息
flush status;
部分状态变量可以重置
重置只影响会话级别,全局级别不受影响
a、查看所有状态变量
show status;
b、查看仅有global的装变量(connections)
--查看指定的状态变量,以下两个与connections相关的都为全局状态变量
--连接到MYSQL服务器的数量(包含成功或失败的)
show global status like 'connections%';
show global status like '%connections%';
c、查看既有global又有session状态的变量
--查看session状态变量opened_tables
show session status like 'opened_tables';
select coun(*) from sakila.customer;
d、查询系统表获取状态变量的值
--从performance_schema.session_status表查询状态变量OPENED_TABLES
select * from performance_schema.session_status where variable_name like 'opened_tables';
--查看全局状态变量opened_tables
select * from performance_schema.global_status where variable_name like 'opened_tables';