zoukankan      html  css  js  c++  java
  • pt-log-player

    简介

    pt-log-player是MySQL日志回放工具,在pt2.4中被去除,由percona-playback取代。

    在2.1中还是保留,如果想使用的话,需要下载2.1版本的。 

    使用方法 

    pt-log-player [OPTION...] [DSN]

     例子:

    日志切分

    pt-log-player --split Thread_id  --type=genlog --session-files 16 --only-select --base-dir ./sessions ./mysql.log

    日志回放

    pt-log-player --play ./play/ --base-dir ./results -u test -p 'test3872' -h 10.75.19.132 -P 3872

    要注意host、user、password以及port的顺序

    结果分析

    使用pt-query-digest汇总结果

    pt-query-digest ./results/*

    描述

    pt-log-player做两件事情:

    1、将MySQL查询日志分成多个session文件

    2、在指定的MySQL server上回放这些session查询

    只有session files才能被回放,慢查询不能直接被回放,必须被改造。

    session file是来自慢查询中的一组查询,拥有一个共同的属性,经常是Thread_id。

    这个是--split的切分依据。多个session会存放在单个session file中。相关的参数如下--session-files,--max-sessions,--base-file-name以及--base-dir。

    pt-log-player使用--play回放session files,参数--threads控制并发量。每个线程回放指定的session file。这些sessions会被回放地足够快,因为目标是压力测试以及负载测试。所以不建议直接在线上使用pt-log-player。

    每个--play线程将对应的结果写入单个文件中。输出的结果如slow log格式,故可以使用pt-query-digest汇总这些结果。

    输出

    --split和--play有两个输出。

    --split输出:

    -- START SESSION 10
    use foo
    SELECT col FROM foo_tbl

    --play输出:

    # Thread_id: 1107285559  Query_time: 0.000693  Schema: elink
    SELECT * FROM my_data_22 WHERE `uid` = 1228640232 AND `blog_id`='493b8fe801009em6' AND `status`=1;

    参考文献

    http://hi.baidu.com/ytjwt/item/26ebff16c7c6e40f8fbde40b

    http://www.percona.com/doc/percona-toolkit/2.1/pt-log-player.html

  • 相关阅读:
    1065 01字符串
    poj 1321 棋盘问题
    0608模拟算法试题
    唯一的雪花
    2969 角谷猜想
    0607枚举算法试题
    3162 抄书问题(划分dp)
    8782:乘积最大(划分dp)
    2985:数字组合
    3531:判断整除
  • 原文地址:https://www.cnblogs.com/gsblog/p/3419204.html
Copyright © 2011-2022 走看看