weblog of key_amb

主にIT関連の技術メモ

MySQL Seconds_Behind_Master とレプリケーション監視

MySQL の Seconds_Behind_Master はレプリケーションの遅延具合を手軽に確認できる指標ですが、いくつか問題もあるようです。

公式ドキュメントでは次の制限が示されています。

  • ネットワークが遅い環境では有用な指標ではない

また、MySQL 5.5, 5.6 のドキュメントでは次のようにも書かれています。

  • Slave I/O スレッドが Master からのイベントをキューイングしている最中では、0と比較的大きな数字の間を行き来することがある

また、いくつかバグ報告もなされています。 上位のバージョンでは修正されているものもあります。

このバグは Seconds_Behind_Master が異常に大きな値になるというもので、どうやら MySQL 5.1 ではパッチ適用されていないようです。

こうした状況を考慮すると、監視の精度が要求されるケースでは Seconds_Behind_Master を使うよりもタイムスタンプを記録する監視用のテーブルを用意するなどした方が無難かもしれません。

参考