0

我正在尝试解决我在 Mysql 数据库上遇到的性能问题,为此我正在使用 mysqltuner。我不明白为什么在 phpmyadmin 和 mysqltuner 中我提到了几个变量,而当我打开 my.cnf 文件时几乎是空的。只有 maxconnections 参数。其他变量存储在哪里???

4

3 回答 3

1

其他变量是默认值。My.cnf 仅覆盖默认值。您可以在此处查找默认值:https ://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html

于 2015-08-03T13:06:53.083 回答
0

mysqltuner大部分来自

SHOW GLOBAL VARIABLES;
SHOW GLOBAL STATUS;

my.cnf仅仅是VARIABLES对服务器内置的默认静态的覆盖。 STATUS是随时间变化的计数器等。

注意这个词GLOBALSESSION这些是属于您的连接的相应值的默认值。您在 phpmyadmin 中的VARIABLES更改不会是永久性的。您必须编辑my.cnf并重新启动 mysqld 才能获得永久更改。

通常,您无法通过调整来摆脱性能问题。一旦你设置了主缓存大小(你使用的是哪个引擎?你有多少内存?),没有太多其他调整值得做。

主要的性能提升来自改进查询和/或架构,例如添加复合索引。让我们看一个慢查询,我们可以进一步讨论这个问题。

于 2015-08-04T05:13:14.863 回答
0

MysqlTuner 在运行时读取变量和状态。

于 2015-08-24T09:27:59.020 回答