用于显示当前配置变量的 mysql 命令

找不到从数据库中显示 mysql 当前配置的命令。

我知道我可以查看/etc/mysql/my.cnf,但这不是我需要的。

164395 次浏览

你要找的是这个:

SHOW VARIABLES;

您可以像任何查询一样进一步修改它:

SHOW VARIABLES LIKE '%max%';

作为替代方法,您还可以查询 information_schema数据库并从 global_variables(当然也包括 global_status)检索数据。这种方法提供了相同的信息,但是使您有机会对结果进行更多的处理,因为它是一个普通的老式查询。

例如,可以将单位转换为更易读的单位。以下查询提供 innodb_log_buffer_size的当前全局设置(以字节和兆字节为单位) :

SELECT
variable_name,
variable_value AS innodb_log_buffer_size_bytes,
ROUND(variable_value / (1024*1024)) AS innodb_log_buffer_size_mb
FROM information_schema.global_variables
WHERE variable_name LIKE  'innodb_log_buffer_size';

结果你会得到:

+------------------------+------------------------------+---------------------------+
| variable_name          | innodb_log_buffer_size_bytes | innodb_log_buffer_size_mb |
+------------------------+------------------------------+---------------------------+
| INNODB_LOG_BUFFER_SIZE | 268435456                    |                       256 |
+------------------------+------------------------------+---------------------------+
1 row in set (0,00 sec)