Upload
doaki
View
10.508
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
マスタ n 対スレーブ1
レプリケーションの作り方
do_aki2012/04/19 MySQL Casual Talks Vol.3
続
| 所属 | > 株式会社もしも (ドロップシッピング・アフィリエイト ASP )
| 仕事 | > インフラ(サーバ管理)兼 Web アプリケーション開発
| 出現 | > 渋谷・山手線沿線| 特性 | > PHPer
do_aki ( どぅーあき )
http://do-aki.net/
前回までのあらすじ
一般的なレプリケーション
Master
Slave:1 Slave:2 Slave:n……
1:n
n:1 レプリケーション
MasterA
SlaveAB
MasterB
CHAN
GE
MATER
TO
http://www.slideshare.net/do_aki/20110809-my-sql-casual-talks-vol2
詳しくは、前回のスライドを参照
時間がない
今回のまとめ
半年間無停止無故障稼働中
現在はマスタ切り替えを、基本 2秒ごとに
数100qps程度ならば問題なく捌いている
7 月に稼働開始
• 8 月に MySQL Casual Talks Vol.2 での発表
• 感想やアドバイスをいただいた
SBR / RBR について
• クエリによっては、ステートメントベースレプリケーションだと NG なケースもある
• それぞれのマスタは、共通の DB スキーマ / テーブルを持っていないので問題なかった!
• 1 テーブルをシャーディングしているならば行ベースレプリケーションを使った方が良い
それスパについて
それ Spider※ で
できるよ※Spider Storage Engine のこと
プライバシー保護のため一部修正しております
ACCIDENT!
11 月頭に停止
• 原因は、 max_allowed_packet の値がマスタに比べて小さすぎたこと
• マスタとスレーブの設定は基本的には合わせるべき ( 鍵本 p339)
それ以降• 今に至るまで、障害は一切発生せず
• Perl スクリプト一本勝負• https://github.com/do-aki/SwitchMaster
• daemontools とか supervisor とかmonit とかなにそれおいしいの?
運用する上での注意点• エラーログが膨れあがる(マスタ切り替
えの度に吐かれる)• 本当のエラーが埋もれる• 定期的なパージをする必要も
• マイナバージョンによって、 FLUSH LOGS の挙動が異なるので気をつけましょう。参考: MySQL のエラーログを削除する際の注意
点http://d.hatena.ne.jp/do_aki/20120221/1329820114
半年間無停止無故障稼働中 今も
ありがとうございました
blank page