SlideShare a Scribd company logo
1 of 12
MySQL4.1.21のレプリケーションの障害復旧 短いです…
環境と経緯 MySQL4.1.21(InnoDB) マスター&スレーブのレプリケーションにて冗長化していた スレーブ・マシンに障害発生し、レプリケーションを一旦停止 復旧後、レプリケーションが正常に再開できず。 異常を発見して、レプリケーションの復旧を試みる
レプリケーションの状態の確認 「mysql> show slave status;」のSlave_IO_Running: とSlave_SQL_Running: を見る Slave_IO_Running:I/Oスレッドが開始されたかどうかを示す Slave_SQL_Running:SQLスレッドが開始されたかどうかを示す
稼働時と停止時 稼働時Slave_IO_Running: YesSlave_SQL_Running: Yes 停止時Slave_IO_Running: NoSlave_SQL_Running: No
異常により停止している状態 I/Oスレッドが停止しているSlave_IO_Running: NoSlave_SQL_Running: Yes↓マスターサーバに接続できない(host名が間違っている等)、ディスクに空きがない、スレーブを停止した時点以前のバイナリログがない、等 SQLスレッドが停止しているSlave_IO_Running: YesSlave_SQL_Running: No↓スレーブサーバに更新系のSQLを発行してしまった、等
I/Oスレッドが停止している場合の対処 まずは、start slave io_thread; を試す。※オプションなしのstart slave;でI/OとSQLのスレーブスレッドを同時に開始させることができるが、ここでは念のため、オプションを指定して試している。 改善しない場合には以下を実施(主な施策)A.マスターサーバのhost名の確認my.cnf:「master-host」「master-user」「master-password」show  slave status;:「Master_Host」と「Master_User」 間違っていた場合my.cnf->書き直し、mysqlを再起動show slave status->CHANGE MASTER TO MASTER_HOST = ‘ホスト名’,MASTER_USER = ‘ユーザ名’, MASTER_PASSWORD = ‘パスワード’,MASTER_LOG_FILE = ‘master-bin.0000XX’, MASTER_LOG_POS = YYY;
バイナリログがなくなっていた場合 マスターサーバのバイナリログが残っているか確認し、show slave status;の「Master_Log_File」の値にあるバイナリログよりも以前のログがない場合↓I/Oの起動は不可。マスターサーバをもとネタに、スレーブマシンを再構築する
SQLスレッドが停止している場合の対処 まずは、start slave sql_thread; を試す。※オプションなしのstart slave;でI/OとSQLのスレーブスレッドを同時に開始させることができるが、ここでは念のため、オプションを指定して試している。 改善しない場合↓今回の異常はこのパターン原因は、レプリケーション停止中にスレーブサーバでなんらかの更新系SQLがはいってしまった。
Show slave status;の「Last_Error:」 Last_Error: Error 'Duplicate entry ‘123456' for key 1' on query. Default database: ‘db_name'. Query: 'INSERT INTO sessions (`updated_at`, `session_id`, `data`) VALUES('2009-09-08 18:04:04', 'afa6900d3b0352f745aca345e249d879', 'BAh7BiIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNoSGFzaHsABjoKQHVzZWR7AA==')‘ テーブル「db_name」(DBはテーブル名から推論する)のid「123456」(entry`123456`の部分)のレコードが重複している、というアラート↓つまり、スレーブ側にすでにIDが存在するため、同期ができない、という状態
復旧の手順 Stop slave; Show slave status;の「Last Error:」から、テーブル名とIdを確認 重複したレコードを同期回避するA.同レコードを削除する (DELETE文)B.同レコードを無視する (SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; ) Start slave;
注意点など 重複レコードを削除する場合には、削除後のレプリケーション再開後に、同IDのレコードが再度スレーブに書き込まれているか確認する スレーブへの書き込みがあり得ないならば、my.cnfにread_onlyオプションを指定する
参考 現場指向のレプリケーション詳説http://www.irori.org/doc/mysql-rep.html  [MySQLウォッチ]第18回レプリケーションのトラブル脱出http://itpro.nikkeibp.co.jp/members/ITPro/oss/20050712/164383/?ST=oss&P=1 MySQLレプリケーションの設定http://www.maruko2.com/mw/MySQL_レプリケーションの設定  [MySQL]レプリケーションとスレーブ(Slave)エラーの対処(データの整合性)http://blog.mikuriya.biz/archives/6  MySQLレプリケーションを安全に利用するための10のテクニックhttp://nippondanji.blogspot.com/2009/03/mysql10.html

More Related Content

More from ngi group.

RubyとPost Gis
RubyとPost GisRubyとPost Gis
RubyとPost Gisngi group.
 
軽量高機能webサーバーnginx
軽量高機能webサーバーnginx軽量高機能webサーバーnginx
軽量高機能webサーバーnginxngi group.
 
SvnからGitへの移行について
SvnからGitへの移行についてSvnからGitへの移行について
SvnからGitへの移行についてngi group.
 
素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~ngi group.
 
Q4 Mでメッセージキュー
Q4 MでメッセージキューQ4 Mでメッセージキュー
Q4 Mでメッセージキューngi group.
 
Git紹介~入門編~
Git紹介~入門編~Git紹介~入門編~
Git紹介~入門編~ngi group.
 
正規表現のススメ_20091217
正規表現のススメ_20091217正規表現のススメ_20091217
正規表現のススメ_20091217ngi group.
 
Mixiアプリで体験する Open Social
Mixiアプリで体験する Open SocialMixiアプリで体験する Open Social
Mixiアプリで体験する Open Socialngi group.
 
Html5 入門編 その2
Html5 入門編 その2Html5 入門編 その2
Html5 入門編 その2ngi group.
 
素敵なjavascript ~Firefox編 ~
素敵なjavascript ~Firefox編 ~素敵なjavascript ~Firefox編 ~
素敵なjavascript ~Firefox編 ~ngi group.
 
20091119_sinatraを使ってみた
20091119_sinatraを使ってみた20091119_sinatraを使ってみた
20091119_sinatraを使ってみたngi group.
 
Zshって最強らしい
Zshって最強らしいZshって最強らしい
Zshって最強らしいngi group.
 
muninで簡単&自在サーバーモニタリング
muninで簡単&自在サーバーモニタリングmuninで簡単&自在サーバーモニタリング
muninで簡単&自在サーバーモニタリングngi group.
 
H T M L5 入門編
H T M L5 入門編H T M L5 入門編
H T M L5 入門編ngi group.
 
エンジニア知識共有会発表資料 20090910
エンジニア知識共有会発表資料 20090910エンジニア知識共有会発表資料 20090910
エンジニア知識共有会発表資料 20090910ngi group.
 
フラクタリスト技術知識共有会発表資料 090903
フラクタリスト技術知識共有会発表資料 090903フラクタリスト技術知識共有会発表資料 090903
フラクタリスト技術知識共有会発表資料 090903ngi group.
 

More from ngi group. (17)

RubyとPost Gis
RubyとPost GisRubyとPost Gis
RubyとPost Gis
 
Yii紹介
Yii紹介Yii紹介
Yii紹介
 
軽量高機能webサーバーnginx
軽量高機能webサーバーnginx軽量高機能webサーバーnginx
軽量高機能webサーバーnginx
 
SvnからGitへの移行について
SvnからGitへの移行についてSvnからGitへの移行について
SvnからGitへの移行について
 
素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~
 
Q4 Mでメッセージキュー
Q4 MでメッセージキューQ4 Mでメッセージキュー
Q4 Mでメッセージキュー
 
Git紹介~入門編~
Git紹介~入門編~Git紹介~入門編~
Git紹介~入門編~
 
正規表現のススメ_20091217
正規表現のススメ_20091217正規表現のススメ_20091217
正規表現のススメ_20091217
 
Mixiアプリで体験する Open Social
Mixiアプリで体験する Open SocialMixiアプリで体験する Open Social
Mixiアプリで体験する Open Social
 
Html5 入門編 その2
Html5 入門編 その2Html5 入門編 その2
Html5 入門編 その2
 
素敵なjavascript ~Firefox編 ~
素敵なjavascript ~Firefox編 ~素敵なjavascript ~Firefox編 ~
素敵なjavascript ~Firefox編 ~
 
20091119_sinatraを使ってみた
20091119_sinatraを使ってみた20091119_sinatraを使ってみた
20091119_sinatraを使ってみた
 
Zshって最強らしい
Zshって最強らしいZshって最強らしい
Zshって最強らしい
 
muninで簡単&自在サーバーモニタリング
muninで簡単&自在サーバーモニタリングmuninで簡単&自在サーバーモニタリング
muninで簡単&自在サーバーモニタリング
 
H T M L5 入門編
H T M L5 入門編H T M L5 入門編
H T M L5 入門編
 
エンジニア知識共有会発表資料 20090910
エンジニア知識共有会発表資料 20090910エンジニア知識共有会発表資料 20090910
エンジニア知識共有会発表資料 20090910
 
フラクタリスト技術知識共有会発表資料 090903
フラクタリスト技術知識共有会発表資料 090903フラクタリスト技術知識共有会発表資料 090903
フラクタリスト技術知識共有会発表資料 090903
 

Recently uploaded

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 

Recently uploaded (9)

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

エンジニア知識共有会発表資料_20090917_レプリケーションの障害復旧