利用数据库内建工具辅助性能分析和优化_MySQL
程序员文章站
2022-06-04 18:29:55
...
我们讨论的是数据库性能优化的另一方面,即运用数据库服务器内建的工具辅助性能分析和优化。 $
`F]l}T}
▲ SHOW J a^m +
KX{#g.t
执行下面这个命令可以了解服务器的运行状态:mysql >show status; >GRxc{s
u3";5iWn)
该命令将显示出一长列状态变量及其对应的值,其中包括:被中止访问的用户数量,被中止的连接数量,尝试连接的次数,并发连接数量最大值,以及其他许多有用的信息。这些信息对于确定系统问题和效率低下的原因是十分有用的。 vAU{ALlp
n*._piR)
SHOW命令除了能够显示出MySQL服务器整体状态信息之外,它还能够显示出有关日志文件、指定数据库、表、索引、进程和许可权限表的宝贵信息。 GD=fk._
h=0}UJ
▲ EXPLAIN :y~6qR41IE
%'CLUjbo:
EXPLAIN能够分析SELECT命令的处理过程。这不仅对于决定是否要为表加上索引很有用,而且对于了解MySQL处理复杂连接的过程也很有用。 6^M6ln=t;
H`@X/aJy~
下面这个例子显示了如何用EXPLAIN提供的信息逐步地优化连接查询。(本例来自MySQL文档,见http://www.mysql.com/doc/E/X/EXPLAIN.html。原文写到这里似乎有点潦草了事,特加上此例。) 5Gj,^\a
mx+@jK
假定用EXPLAIN分析的SELECT命令如下所示: =*X
{
`F]l}T}
▲ SHOW J a^m +
KX{#g.t
执行下面这个命令可以了解服务器的运行状态:mysql >show status; >GRxc{s
u3";5iWn)
该命令将显示出一长列状态变量及其对应的值,其中包括:被中止访问的用户数量,被中止的连接数量,尝试连接的次数,并发连接数量最大值,以及其他许多有用的信息。这些信息对于确定系统问题和效率低下的原因是十分有用的。 vAU{ALlp
n*._piR)
SHOW命令除了能够显示出MySQL服务器整体状态信息之外,它还能够显示出有关日志文件、指定数据库、表、索引、进程和许可权限表的宝贵信息。 GD=fk._
h=0}UJ
▲ EXPLAIN :y~6qR41IE
%'CLUjbo:
EXPLAIN能够分析SELECT命令的处理过程。这不仅对于决定是否要为表加上索引很有用,而且对于了解MySQL处理复杂连接的过程也很有用。 6^M6ln=t;
H`@X/aJy~
下面这个例子显示了如何用EXPLAIN提供的信息逐步地优化连接查询。(本例来自MySQL文档,见http://www.mysql.com/doc/E/X/EXPLAIN.html。原文写到这里似乎有点潦草了事,特加上此例。) 5Gj,^\a
mx+@jK
假定用EXPLAIN分析的SELECT命令如下所示: =*X
{