28. アドオンした死活(︖)監視
SHOW STATUS, SHOW VARIABLES
Threads_connected / max_connections を監視
100%になると当然 Too many connections
Percona Serverだとエラーログに出るんだけど
監視ユーザーは Super 持ちなことが多くて意外と気付かない
-
read_only
マスターの場合はOFFであるべきで
スレーブの場合はONであるべき
意外とうっかりミスが拾えていい
-
27/63
29. アドオンした死活(︖)監視
SHOW SLAVE STATUS のMulti-Source Replication対応
意外と対応されてなかった。。-
マスター、スレーブの⾃動判定
胸に⼿を当てて考えてみたら SHOW SLAVE STATUS の出⼒結果の有無で
判断してる
-
じゃあスクリプトにもそれやらせればいいんじゃないか-
28/63
33. ログ監視
[Note] Slave: received end packet from server due to
dump thread being killed on master
server̲uuidカブりとかで出るやつ(I/Oスレッドが無限に再起動する
やつ)
-
mysqld_safe Number of processes running now: 0
OOM Killerに亭主を殺されたり、SEGVでmysqldが死んだりした時は
まずこれが出る。mysqld̲safeを使ってると瞬間的に再起動されち
ゃってNagiosに引っかからないことがあるので。
-
[Warning] Unsafe statement written to the binary log
using statement format since BINLOG_FORMAT =
STATEMENT.
binlog_format = STATEMENT でレプリケーションアンセーフな関数使
っちゃった時に
-
今はもう binlog_format = STATEMENT 撲滅したので⼆度と出ることは
ないような気もする
-
32/63
55. 後追いできるリソース監視
あと SHOW GLOBAL STATUS, SHOW GRANTS, SHOW VARIABLES,
SHOW TABLE STATUS とか
p_s.events_statements_summary_by_digest とか取って保管
してみるとかしてる
普段はただデータを保管(MySQLに突っ込んでる)するだ
けで、⾒たくなったら re:dashのコンテナー起動してSQL叩
いてグラフにする
拡張がすごく楽(SELECTで値を取ってINSERTするだけだ
から)
実際に⾒たくなった時に「どう⾒るか」を考える-
54/63