可以使用MySQL中的ShowStatus选择单个值吗?

可以使用MySQL中的ShowStatus选择单个值吗?,mysql,Mysql,是否可以编写一个只返回MySQL显示状态返回的变量值的查询?理想情况下,我想要的是: SELECT `Value` FROM (SHOW STATUS LIKE 'Com_delete') 或者类似的东西 这是可能的吗?如果您使用的是MySQL 5.1或更高版本,您应该能够从信息\u SCHEMA中获取该数据,例如全局状态: select VARIABLE_VALUE from information_schema.GLOBAL_STATUS where VARIABLE_NAME = '

是否可以编写一个只返回MySQL显示状态返回的变量值的查询?理想情况下,我想要的是:

SELECT `Value` FROM (SHOW STATUS LIKE 'Com_delete')
或者类似的东西


这是可能的吗?

如果您使用的是MySQL 5.1或更高版本,您应该能够从
信息\u SCHEMA
中获取该数据,例如全局状态:

select VARIABLE_VALUE 
from information_schema.GLOBAL_STATUS 
where VARIABLE_NAME = 'Com_delete';
或者,如果您需要会话状态:

select VARIABLE_VALUE 
from information_schema.SESSION_STATUS 
where VARIABLE_NAME = 'Com_delete';

SHOW STATUS
的默认值是
SESSION
STATUS,因此后一个查询可以替代该状态。

作为Ike Walker答案的补充,MySQL 5.7.6上不推荐使用信息模式,因为性能模式表旨在替代信息模式表

因此,通过查询信息_模式,您可能会得到如下错误:

“信息模式.会话状态”功能已禁用;见 “显示兼容性”文档

根据,您可以将
show_compatibility_56
设置为
ON
以启用向后兼容性并继续使用5.6语法,或者启用性能模式并查询新表:

performance_schema.global_variables
performance_schema.session_variables

performance_schema.global_status
performance_schema.session_status

隐马尔可夫模型。。。不幸的是,我不是。我用的是5.0.45,太糟糕了。您可以这样做来获取命令行上的值:
mysql-sse“SHOW STATUS like'Com_delete';”awk'{print$2}'
您是救生员。这对于JMeter DBMon插件监控MySQL性能非常有用。第一个示例不是全局状态,第二个示例不是会话一吗?请注意,
信息\u模式
已被弃用,使用
性能\u模式
是解决方案。看见