Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ligthtning Talks at MySQL Casual Vol.3
Search
Akinori Yoshida
April 19, 2012
Technology
7.4k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ligthtning Talks at MySQL Casual Vol.3
Akinori Yoshida
April 19, 2012
More Decks by Akinori Yoshida
See All by Akinori Yoshida
hipchat at mitsubachiworks inc.
marqs
1
8.3k
Google Analytics
marqs
0
180
Other Decks in Technology
See All in Technology
Rubyで音を視る
ydah
1
100
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
930
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
1.1k
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
3
220
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
250
ブロックチェーン / Blockchain
ks91
PRO
0
110
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
1k
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
190
Building applications in the Gemini API family.
line_developers_tw
PRO
0
1.9k
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
270
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
EventBridge Connection
_kensh
4
590
Featured
See All Featured
Side Projects
sachag
455
43k
Producing Creativity
orderedlist
PRO
348
40k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Speed Design
sergeychernyshev
33
1.8k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Facilitating Awesome Meetings
lara
57
6.9k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
190
Utilizing Notion as your number one productivity tool
mfonobong
4
320
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
How STYLIGHT went responsive
nonsquared
100
6.2k
Everyday Curiosity
cassininazir
0
220
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
Transcript
MySQL Casual Talks Vol.3 Lightning Talks Akinori Yoshida @marqs
mitsubachiworks inc.
We love Maatkit
lots of Hatena Bookmarks
Ops guys at Pinterest use Maatkit http://speakerdeck.com/u/yashh/p/scaling-pinterest
Maatkit has become part of Percona Toolkit, and there will
be no further development or releases of Maatkit separately from Percona Toolkit. http://www.maatkit.org/
Maatkit Percona Toolkit
Percona Toolkit is derived from Maatkit and Aspersa, two of
the best- known toolkits for MySQL server administration. It is developed and supported by Percona Inc. http://www.percona.com/software/percona-toolkit/
some new tools.
pt-mext
Look at many samples of MySQL SHOW GLOBAL STATUS side-by-side.
http://www.percona.com/doc/percona-toolkit/2.1/pt-mext.html
server01:~$ pt-mext -r -- mysqladmin ext -i3 -c7 -uxxx -pxxx|grep
buffer Innodb_buffer_pool_pages_data 380 0 0 0 Innodb_buffer_pool_pages_dirty 9 2 2 -10 Innodb_buffer_pool_pages_flushed 2958 0 0 0 Innodb_buffer_pool_pages_free 131 0 0 0 Innodb_buffer_pool_pages_misc 1 0 0 0 Innodb_buffer_pool_pages_total 512 0 0 0 Innodb_buffer_pool_read_ahead_rnd 1 0 0 0 Innodb_buffer_pool_read_ahead_seq 0 0 0 0 Innodb_buffer_pool_read_requests 458289610 1801300 1720438 1144393 Innodb_buffer_pool_reads 12 0 0 0 Innodb_buffer_pool_wait_free 0 0 0 0 Innodb_buffer_pool_write_requests 386698 831 753 520
pt-online-schema-change
@kazeburo
pt-stalk
How do you solve intermittent MySQL problems when you can’t
observe them? That’s why pt-stalk exists. http://www.percona.com/doc/percona-toolkit/2.1/pt-stalk.html
define the trigger with the --function, --variable, and -- threshold
options http://www.percona.com/doc/percona-toolkit/2.1/pt-stalk.html
server01:~$ pt-stalk --cycles 2 --function processlist --variable State --match update
--threshold 10 --dest /var/tmp/ -- -uxxx -pxxx 2012_04_18_16_24_49 Starting /usr/bin/pt-stalk --function=processlist -- variable=State --threshold=10 --match=update --cycles=2 --interval=1 -- iterations= --run-time=30 --sleep=300 --dest=/var/tmp/ --prefix= --notify-by- email= --log=/var/log/pt-stalk.log --pid=/var/run/pt-stalk.pid 2012_04_18_16_24_50 Check results: State=6, matched=no, cycles_true=0 2012_04_18_16_24_55 Check results: State=78, matched=yes, cycles_true=1 2012_04_18_16_24_57 Check results: State=43, matched=yes, cycles_true=2 2012_04_18_16_24_58 Collect triggered 2012_04_18_16_25_01 Collector PID 14808 2012_04_18_16_25_01 Sleeping 300 seconds after collect pt-stalk
server01:/var/tmp$ ll total 2140 drwxrwxrwt 2 root root 4096 2012-04-18
16:27 ./ drwxr-xr-x 12 root root 4096 2012-02-22 05:54 ../ -rw-r--r-- 1 root root 10500 2012-04-18 16:26 2012_04_18_16_24_58-df -rw-r--r-- 1 root root 133 2012-04-18 16:26 2012_04_18_16_24_58-disk-space -rw-r--r-- 1 root root 33210 2012-04-18 16:26 2012_04_18_16_24_58-diskstats -rw-r--r-- 1 root root 17 2012-04-18 16:26 2012_04_18_16_24_58-hostname -rw-r--r-- 1 root root 34616 2012-04-18 16:25 2012_04_18_16_24_58- innodbstatus1 -rw-r--r-- 1 root root 34801 2012-04-18 16:26 2012_04_18_16_24_58- innodbstatus2 -rw-r--r-- 1 root root 31320 2012-04-18 16:27 2012_04_18_16_24_58-interrupts -rw-r--r-- 1 root root 7425 2012-04-18 16:25 2012_04_18_16_24_58-iostat -rw-r--r-- 1 root root 563 2012-04-18 16:25 2012_04_18_16_24_58-iostat- overall -rw-r--r-- 1 root root 4215 2012-04-18 16:25 2012_04_18_16_24_58-log_error -rw-r--r-- 1 root root 12620 2012-04-18 16:25 2012_04_18_16_24_58-lsof -rw-r--r-- 1 root root 36420 2012-04-18 16:26 2012_04_18_16_24_58-meminfo -rw-r--r-- 1 root root 8380 2012-04-18 16:25 2012_04_18_16_24_58-mpstat -rw-r--r-- 1 root root 608 2012-04-18 16:25 2012_04_18_16_24_58-mpstat- overall -rw-r--r-- 1 root root 73055 2012-04-18 16:25 2012_04_18_16_24_58-mutex- status1 -rw-r--r-- 1 root root 73061 2012-04-18 16:26 2012_04_18_16_24_58-mutex- status2 -rw-r--r-- 1 root root 460229 2012-04-18 16:25 2012_04_18_16_24_58-mysqladmin -rw-r--r-- 1 root root 20580 2012-04-18 16:26 2012_04_18_16_24_58-netstat
server01:/var/tmp$ pt-sift /var/tmp/ ======== server01 at 2012_04_18_16_24_58 DEFAULT (1 of
1) ======== --diskstats-- #ts device rd_s rd_avkb rd_mb_s rd_mrg rd_cnc rd_rt wr_s wr_avkb wr_mb_s wr_mrg wr_cnc wr_rt busy in_prg io_s qtime stime {29} xvda1 0.2 8.7 0.0 0% 0.0 4.7 31.7 7.0 0.2 31% 0.3 6.1 24% 0 31.9 0.8 5.2 xvda1 0% 35% 15% 30% 0% 65% 70% 65% . 50% 55% 60% 50% 60% . 50% 65% 55% 45% 65% 40% 60% 80% 5% 0% 15% 0% 25% 10% 0% --vmstat-- r b swpd free buff cache si so bi bo in cs us sy id wa 51 4 0 325532 97472 52648 0 0 6 36 15 328 2 1 84 2 16 1 0 320592 97552 53708 0 0 17 44 18 161 1 2 0 4 wa 0% . . . . . . . . . . . . . . 40% 0% . . . 10% 60% 50% 45% . . 50% 30% 45% 30% --innodb-- txns: 92xACTIVE (50s) 8xCOMMITTED (0s) 2xnot (0s) 8 queries inside InnoDB, 92 queries in queue Main thread: flushing log, pending reads 0, writes 1, flush 1 Log: lsn = 0, chkp = 0, chkp age = 0 Threads are waiting at: Threads are waiting on: --processlist-- State 91 Sending data 7 freeing items 3 1 update
very powerful if we can set appropriate trigger :)
one big drawback
Percona Toolkit does *not* have a tool correspond to mk-slave-move
http://www.percona.com/software/percona-toolkit/
thanks!!