开源 MySQL 性能工具

开源 MySQL 性能工具

有没有开源的 MySQL 性能工具来优化 SQL 查询?

答案1

要分析 mysql 命令,您可以使用SHOW PROFILE

mysql> SET profiling = 1;
mysql> [type your query here]
mysql> SHOW PROFILE;

要获取有关 mysql 将做什么以获得所需结果的更多信息,您可以使用EXPLAIN.

mysql> EXPLAIN [type your query here]

优化的良好起点是索引的使用和内存使用量的增加my.cnf(默认参数可能非常低)。如果删除表中的大量数据OPTIMIZE TABLE也可能会有所帮助。

OPTIMIZE TABLE table;

无论如何,您应该使用 SHOW PROFILE 的输出来确定哪些部分需要大量时间并且值得优化。

优化时要注意查询缓存的切换。否则你就会欺骗自己。

答案2

首先,再多的优化和缓存也无法取代物理硬件。最佳的优化形式是向服务器添加更多内存,然后执行优化步骤。

优化 MySQL 是一个持续的过程。您应该每周对 MySQL 进行优化。这将允许您调整 MySQL 配置。

五年前,当这个问题被问到时,我们在 Trusty Tahr 上,这是我印象最深刻的一个,里面有一个my.cnf你可以编辑的文件,快进到 Xenial,如果你打开,/etc/mysql就没有my.cnf可以编辑的文件。现在是一个链接/etc/alternatives/my.cnf

您要使用 Xenial (Ubuntu 16) 编辑的文件位于另一个目录中,即/etc/mysql/mysql.conf.d.您将为查看这篇文章的人编辑的文件是mysqld.cnf.

请备份您的文件,然后返回您的主目录并用于mysqlcheck优化您的数据库。

相关内容