从配置文件或在运行时修改了一些设置(持久化或非持久化),如何向您显示值是什么以及它们是如何设置的。
全局变量
该变量是从全局选项文件中设置的。
首先,让我们列出我们在服务器中配置的所有全局变量:
SELECT t1.VARIABLE_NAME,
VARIABLE_VALUE,
VARIABLE_SOURCE
FROM performance_schema.variables_info t1
JOIN performance_schema.global_variables t2
ON t2.VARIABLE_NAME=t1.VARIABLE_NAME
WHERE t1.VARIABLE_SOURCE != 'COMPILED';
会话变量
会话变量是在运行时设置的。这包括在使用init_file系统变量指定的文件中设置的变量
现在对会话变量进行同样的查询:
SELECT t1.VARIABLE_NAME,
VARIABLE_VALUE,
VARIABLE_SOURCE
FROM performance_schema.variables_info t1
JOIN performance_schema.session_variables t2
ON t2.VARIABLE_NAME=t1.VARIABLE_NAME
WHERE t1.VARIABLE_SOURCE = 'DYNAMIC';
默认变量
变量有其编译的默认值。COMPILED是用于未以任何其他方式设置的变量的值。
SELECT t1.VARIABLE_NAME, VARIABLE_VALUE, VARIABLE_SOURCE
FROM performance_schema.variables_info t1
JOIN performance_schema.global_variables t2
ON t2.VARIABLE_NAME=t1.VARIABLE_NAME
WHERE t1.VARIABLE_SOURCE = 'COMPILED';