【收藏】MySQL Administrator Health(健康度)
原文地址:http://blog.ccidnet.com/blog-htm-do-showone-uid-10104-type-blog-itemid-42129.html
MySQL Administrator 的 Health 部分用图形监控(graphically monitor )的方式展示了 MySQL服务器的实时状态。这里显示了一些状态图,当然你可以很简单的创建自己的状态图, 并把他们组合到自定义的页或者组中。
默认的图形信息( graphical information)显示了关于 MySQL服务器的当前性能(current performance), 加载(load)和内存的使用信息。 其余的页显示了所有的服务器变量,这些页可分为状态变量(status variables)和系统变量(system variables)。 说明:在状态页(status pages)上单击将打开一个到MySQL 服务器的额外连接, 这个页面当你在 Server Connections(连接) 选项里查看线程和用户时将会看到。
我们将从覆盖各种预定义的状态图(pre-made status graphs)开始, 然后描述如何创建你自己的状态图。 最后我们将专注于描述 Health 选项下面的各种状态(various status)和系统变量(system variables)。
10.2. Connection Health(连接健康度)
这个tab页提供了 MySQL服务器的连接信息。 下面三个预定义图(pre-made graphs)将会显示如下:
*
Connection Usage(连接使用率): 显示了当前客户连接的数目占最大连接数的百分比。 (threads connected / max_connections)。如果这个值接近于 100%, 这意味着你要增大服务器的最大连接数(max_connections), 这个连接数的设置是在 Startup Variables(启动变量) 部分。 最大的连接数是从 MySQL Administrator 一启动就显示出来的。 更多的关于服务器连接(server connections)的信息,请查看参考手册(reference manual)的 SHOW VARIABLES(显示变量) 和 Too many connections(太多的连接) Error(错误) 部分。
*
Traffic(流量): 这是反映 bytes_sent 状态的变量(status variable)。它不表示从服务器启动以来的总字节数, 而是表示了当前发送的字节数。 (这里 bytes_sent 变量是个累计值)。 这个图形初始的最大值为102400,并且这个值将随着需要的增加自动的增大。
*
Number of SQL Queries( SQL查询的次数): 这是 com_select 状态变量的展示系统(representation os)。 这里表示当前查询的次数,而不是从服务器启动一来的所有查询次数。 (com_select 变量是个累计值)。 这个图(graph)初始的最大值为10,但这个最大值将随着使用的增加而增大。
10.3. Memory Health(内存健康度)
这个tab页提供了关于内存缓冲(memory caches)的信息,它决定着MySQL服务器的性能。 对每一个cache,都显示当前的连接率(hitrate)或者使用情况(usage of the cache), 这个显示是最近的几分钟的。
*
Query Cache Hitrate: 当在使用状态下,MySQL服务器的 query cache中存储了 SELECT 查询的文本和服务器发送到客户端的结果。 如果有相同的两条语句被先后执行,那么服务器将会从query cache中找到查询的结果, 而不是将SQL语句分解执行一遍。 这个比率反映了被缓冲的查询与没有被缓冲的查询的比。 这个比率越高,则服务器的 SELECT 查询性能就越好。 更多的信息请查看 MySQL Query Cache 部分。
*
Key Efficiency(关键字的效率): 这个水平的图形条显示了分配了多少关键字缓存(key buffer)。 如果这个关键字缓存(key buffer)是相当的百分数, 你可以在 Startup Variables(启动变量) 部分的 key_cache_size 设置中增加值。 这个图表指示了 key_read_requests 的数量,因此产生了实际的key_reads。 这个比率越高,你的主键缓存(key buffer)就越有效。 如果这个比率很低,说明你需要增加keycache的大小。
10.4. Creating Custom Health Graphs(创建自定义的健康度图表)
尽管默认的图表提供了一些有关MySQL服务器状态的信息,但你可能希望在图表上 看到其它信息的轨迹。 在 MySQL Administrator Health 部分允许你增加一些你要跟踪查看的 其他的tab页和图表,它们被包含在 Status Variables(状态变量)中。
创建自定义的健康度图表(Creating Custom Health Graphs)的第一步是在 Health 部分创建一个新页(new page)用来存储你的图形。 要创建一个新页面,在工作区中右击,选择 Add a Page 项。 它将提示你页面的名字(page name) 和描述信息(description) 然后一个新页面就创建好了。
如果你创建好了一个新页,你需要创建一个组。 所有的图表都在组(groups)中。例如: Key buffer usage 和 Key buffer hitrate 图表都位于 Key Efficiency组中。要创建一个组,在你创建的page上右击,选择 Add a Group 项。
要创建一个自定义图表,在一个组上右击选择 Add a graph 项。将出现下列对话框:
图 10.1. The Graph Settings dialog(图表设置对话框)
The Graph Settings dialog
Line-Graph 适合显示随时间变化的趋势,而 Bar-Graph选项更适合显示百分数信息。 如果你选择创建一个条形图(bar-graph),你需要为你的图选择你一个标题。 但对线图(line-graphs)来说,标题是不允许的。
使用Value Formula来设置图表上的数据。 你可以使用 Status Variables 和 System Variables tabs页的任意的变量来创建一个规则。 如果要使用变量的值,就把变量放在方括号里。 (例如 [com_select]), 如果想用变量的相对值(relative value)可以在方括号前面加一个 ^ 字符。
例如, 如果我们想用图表来显示硬盘上的临时表,我们可以使用下列规则:
[created_tmp_disk_tables] / [created_tmp_tables]
如果我们要跟踪在临时表中的一些连续的要素, 我们可以使用下面的规则:
^[created_tmp_tables]
当创建规则以后,选择最能代表你的数据的 Value Unit。 你可以选择Percentage, Count, Byte, 或 Seconds。 在我们的实例中,我们将用Percentage 做为第一个例子, 第二个例子是Count 。 你可以为这个值赋予一个标题。
一旦你指定了规则,就应该为图表配置一下 Max. Value 和 Min. Value , 以至于你的数据均匀的扩展在图表上。 你可以根据对数据的估计设定任意值,或者查看 Autoextend Max. Value 选项以允许 MySQL Administrator 自动增加 Max Value 设定自动防止你的数据扩展到图形外面。
通过在 Max Formular区域中赋予的规则,你可以设定 Max. Value选项。 这些规则将用于 Value Formula 区域。例如,如果你创建了一些跟踪临时表的条形图(bar graph), 你可以使用 [created_tmp_disk_tables]作为 Value Formula 和 [created_tmp_tables]作为Max. Formular。
10.5. Status Variables(状态变量)
这个tab页提供了MySQL服务器的状态变量(status variables)的信息。 In the left box of the working area, you find 在工作区的左边,你可以发现这些种类(categories)和子类(subcategories)。 在这些种类(category)名上双击展开或者折叠子类。
对每一个种类(category)和每个子类(subcategory),在工作区 右边的框中列出了状态变量和它们的值以及对该项简短的解释。 这个状态变量在参考手册的 SHOW STATUS部分有相信的描述。
使用 Refresh 按钮,可以让 MySQL Administrator 重新取回变量和它们的值。
在右边的框上右击可以复制你的变量到剪切板上。
10.6. System Variables(系统变量)
这个tab页提供了MySQL服务器的系统变量的信息。 在工作区的左框,你可以找到这些分类(categories)和它们的子类(subcategories)。 在种类名上双击展开或者折叠它的子类。
对每一个种类和子类,系统变量和它们的值以及简短的解释都列出工作区右边的框中。 详细的系统变量叙述请查看参考手册的 SHOW VARIABLES 部分。
可以在运行时设置( set)的系统变量被标记为可编辑的,在它前面有一个图表,这用来区别 不能在运行时设置( set)的变量。 在可编辑的变量上双击将打开一个对话框,这里你可以指定该变量的另一个值。 单击OK 按钮,保存所做的更改。 单击 Abort按钮,忽略所作的更改。 Changes made in this manner will only persist until the server is restarted, after which the server will revert to it's startup settings. 在 MySQL Administrator中,系统变量都设置为全局的。 说明:要更改全局变量你需要相应的权限。 更多的有关全局变量的信息请查看 SET Syntax 部分。
使用Refresh按钮让MySQL Administrator 重新获取变量和它的值。
在右边的框中右击可以允许你把变量复制到剪贴板