zoukankan      html  css  js  c++  java
  • mysql性能监控工具:mycheckpoint的使用方法

    mycheckpoint 是针对mysql的一个性能监控、指标采集的python写成的工具。

    工作原理说明:

    mycheckpoint是一段脚本,通过将其设置为crontab定时任务,每几分钟采集一次数据(受限于crontab只能是分钟为基本单位)存储在自己的数据库中,并可以将采集的数据进行统计,以web页面的形式展现出来。

    示例效果:

    mycheckpoint-dml-chart-sample-88

    详细请参见:http://code.openark.org/forge/mycheckpoint

    使用步骤:

    0. 下载:

     wget https://mycheckpoint.googlecode.com/files/mycheckpoint-231.tar.gz


    1. 为mycheckpoint创建数据库 

    CREATE DATABASE mycheckpoint;

    2. 授权给当前登录mysql的用户

     GRANT ALL PRIVILEGES ON mycheckpoint.* TO 'root'@'localhost' IDENTIFIED BY 'xxxx';

    3. 创建mycheckpoint需要的数据库表。

        mycheckpoint --host=127.0.0.1 --port=3306 --user=root --password=xxxx --socket=/mysql/tmp/mysql.sock --database=mycheckpoint

    进过这一个步骤之后,会在名为:mycheckpoint数据库中,生成以下数据表。

    +------------------------------------+
    | Tables_in_mycheckpoint             |
    +------------------------------------+
    | alert                              |
    | alert_condition                    |
    | alert_condition_query_view         |
    | alert_email_message_items_view     |
    | alert_pending                      |
    | alert_pending_html_view            |
    | alert_pending_view                 |
    | alert_view                         |
    | charts_api                         |
    | custom_query                       |
    | custom_query_top_navigation_view   |
    | custom_query_view                  |
    | html_components                    |
    | metadata                           |
    | numbers                            |
    | status_variables                   |
    | status_variables_aggregated_day    |
    | status_variables_aggregated_hour   |
    | sv_custom_chart_day                |
    | sv_custom_chart_flattened_day      |
    | sv_custom_chart_flattened_hour     |
    | sv_custom_chart_flattened_sample   |
    | sv_custom_chart_hour               |
    | sv_custom_chart_sample             |
    | sv_custom_html                     |
    | sv_custom_html_brief               |
    | sv_day                             |
    | sv_diff                            |
    | sv_hour                            |
    | sv_latest                          |
    | sv_param_change                    |
    | sv_parameter_change_union          |
    | sv_report_24_7                     |
    | sv_report_24_7_minmax              |
    | sv_report_chart_24_7               |
    | sv_report_chart_day                |
    | sv_report_chart_day_labels         |
    | sv_report_chart_day_timeseries     |
    | sv_report_chart_hour               |
    | sv_report_chart_hour_labels        |
    | sv_report_chart_hour_timeseries    |
    | sv_report_chart_sample             |
    | sv_report_chart_sample_labels      |
    | sv_report_chart_sample_timeseries  |
    | sv_report_day                      |
    | sv_report_day_recent               |
    | sv_report_day_recent_minmax        |
    | sv_report_hour                     |
    | sv_report_hour_recent              |
    | sv_report_hour_recent_minmax       |
    | sv_report_html                     |
    | sv_report_html_24_7                |
    | sv_report_html_brief               |
    | sv_report_human_day                |
    | sv_report_human_hour               |
    | sv_report_human_sample             |
    | sv_report_sample                   |
    | sv_report_sample_recent            |
    | sv_report_sample_recent_aggregated |
    | sv_report_sample_recent_minmax     |
    | sv_sample                          |
    +------------------------------------+

    如果意外将你的web app 的DB指定成了log数据库,则会在你的web app DB中加入以上数据表,并将原web app DB中重名的数据表删除。这将是灾难性的!

    4. 将mycheckpoint配置成定时任务

    * * * * * /usr/local/bin/mycheckpoint  --user=root --password=xxxx --socket=/redmine/mysql/tmp/mysql.sock --database=mycheckpoint

    5. http方式查看结果:

       mycheckpoint --host=127.0.0.1 --port=3306 --user=root --password=xxxx --socket=/mysql/tmp/mysql.sock --database=mycheckpoint  http

    指定数据库时需注意,切莫使用你的web app 的DB. 

    一个小时之后就可以打开本地的http://localhost:12306/mycheckpoint 查看报表。

    点评: 

    这个工具的优势是能将数据统计结果以web形式展现,但是由于其依赖crontab,导致数据采集间隔过大,不能很好的描述mysql的运行状况, 另外,此工具已经于2014年4月停止更新

    其它的mysql第三方工具还有: percona-toolkit / mysqltuner.pl / tuning-primer.sh 等。

     

    参考:

    1. http://code.openark.org/forge/mycheckpoint

    2. https://code.google.com/p/mycheckpoint/downloads/list

  • 相关阅读:
    ESXI | ESXI6.7如何在网页端添加用户并且赋予不同的权限 风行天下
    网页前端 风行天下
    Zabbix远程命令权限不足问题解决方法 风行天下
    CentOS 8时间同步 风行天下
    linux之mv命令排除某个文件或文件夹 风行天下
    zabbix已是运行状态但zabbix server is not running解决办法 风行天下
    centos7进入救援模式,修复错误配置 风行天下
    Centos7 rsync 实现文件同步 风行天下
    python基础之socket与socketserver 风行天下
    linux中命令cp复制拷贝访问权限和修改时间 风行天下
  • 原文地址:https://www.cnblogs.com/ToDoToTry/p/4394249.html
Copyright © 2011-2022 走看看