|  | 
- 11/08 NAT越しにMySQLでレプリケーションすると接続が切れる
- 11/07 Fedora19のコンソール設定
- 12/27 Glassfishインスタンスリソース監視テンプレ
- 12/07 systemctlによるサービス管理でつまづいた
- 09/28 ZABBIXとnscd
This is new entry
						DCとAWS間で、MySQLのレプリケーションを試してみたら、レプリケーションがうまくいかなかった。無通信状態が1時間続くと接続がきれてしまいます。
現象発生時にマスター側、スレーブ側で以下のような確認をしましたが、正常そうに見えました。
・この時 スレーブ側でshow slave statusを実行すると、IOスレッドの稼働状況はYesになっている。
・両方でnetstat -atnを実行すると、スレーブ側ではEstablishedになっているが、マスター側には対応するセッションがない。
最後のnetstatsの結果から途中経路にあるNW機器が原因かと辺りをつけて、両方のMySQLサーバでパケットキャプチャしてみると、30分おきにマスターから スレーブに対してpushフラグのついたパケットが投げられていましたが、途中経路にあるYamaha RTX1200がリセットフラグのついた応答を返していました。
どうやら、RTX1200のNatテーブル保持期間がデフォルトで900秒だったため、Natテーブルからレコードが消えていたため通信に失敗していました。
このため、マスターからスレーブへパケットを投げる間隔を60秒にしてやったところ、問題は解決しました。
変更するためには、 スレーブ側で以下のコマンドを実行します。
																				現象発生時にマスター側、スレーブ側で以下のような確認をしましたが、正常そうに見えました。
確認内容
・マスター側でshow slave hostsを実行すると、1時間経過した時点でエントリーが消える。・この時 スレーブ側でshow slave statusを実行すると、IOスレッドの稼働状況はYesになっている。
・両方でnetstat -atnを実行すると、スレーブ側ではEstablishedになっているが、マスター側には対応するセッションがない。
最後のnetstatsの結果から途中経路にあるNW機器が原因かと辺りをつけて、両方のMySQLサーバでパケットキャプチャしてみると、30分おきにマスターから スレーブに対してpushフラグのついたパケットが投げられていましたが、途中経路にあるYamaha RTX1200がリセットフラグのついた応答を返していました。
どうやら、RTX1200のNatテーブル保持期間がデフォルトで900秒だったため、Natテーブルからレコードが消えていたため通信に失敗していました。
このため、マスターからスレーブへパケットを投げる間隔を60秒にしてやったところ、問題は解決しました。
変更するためには、 スレーブ側で以下のコマンドを実行します。
mysql> change master to MASTER_HEARTBEAT_PERIOD=60;
PR
					COMMENT
				
					ブログ内検索				
				
					カテゴリー				
				
					最新記事				
				(11/08)
(11/07)
(12/27)
(12/07)
(09/28)
				
					最新トラックバック				
				
					プロフィール				
				
HN:
	
アフロ
性別:
	
				非公開
					リコメンド				
				 
	