MySQL レプリケーションの前提条件
現在、この本でレプリケーションについて勉強中。
まだ途中だけど、かなりgoodですね。
![[24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)](http://ecx.images-amazon.com/images/I/51uK4ACymiL._SX150_.jpg)
p77あたりを参照。
ちょっと忘れないようまとめておこう。
■MySQLのレプリケーションの条件(前提条件)
・マスタは複数のスレーブを持つことができる
・スレーブはマスタをただ1つ持つことができる
・すべてのマスタ、スレーブの中で一意なserver-idを指定しなければならない。
・マスタはバイナリログを出力しなければならない。
(用語)
●バイナリログ
・マスタで作成されるログファイル。
・データ更新する処理のみ記録。
・テキスト形式でないので、テキストエディタで見れず、mysqlbinlogコマンドでtxtに変換。
●リレーログ
・スレーブで作成されるログファイル。
・スレーブのI/Oスレッドが、マスタから更新ログを受け取り、スレーブ側に保存したもの。(内容はバイナリログと同じ)
・SQLスレッドによって自動的に削除される。
●スレーブのI/Oスレッド
・マスタから得たデータ(更新ログ)をリレーログに記録する。
●スレーブのSQLスレッド
・リレーログを読み取ってひたすらクエリを実行する。
●ポジション情報
・マスタのホスト名、ログファイル名、ログファイル中の処理したポイントといった情報。
・master.infoで管理。(以下のSQL文で確認 SHOW SLAVE STATUS)
書籍にはMySQLでサポートしているのは「非同期のデータレプリケーション」って書いてあるけど、MySQL5.5から「凖同期レプリケーション」も用意されている。これは先週参加したオープンソースカンファレンスで説明聞いたからよくわかる。ちょっとずつ機能アップしているんだな~
ちなみに以下のサイトはポスグレとMySQLのレプリケーション機能について比較してある。
(参考サイト)
レプリケーション比較 PostgreSQL vs. MySQL
まだ途中だけど、かなりgoodですね。
![[24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)](http://ecx.images-amazon.com/images/I/51uK4ACymiL._SX150_.jpg)
p77あたりを参照。
ちょっと忘れないようまとめておこう。
■MySQLのレプリケーションの条件(前提条件)
・マスタは複数のスレーブを持つことができる
・スレーブはマスタをただ1つ持つことができる
・すべてのマスタ、スレーブの中で一意なserver-idを指定しなければならない。
・マスタはバイナリログを出力しなければならない。
(用語)
●バイナリログ
・マスタで作成されるログファイル。
・データ更新する処理のみ記録。
・テキスト形式でないので、テキストエディタで見れず、mysqlbinlogコマンドでtxtに変換。
●リレーログ
・スレーブで作成されるログファイル。
・スレーブのI/Oスレッドが、マスタから更新ログを受け取り、スレーブ側に保存したもの。(内容はバイナリログと同じ)
・SQLスレッドによって自動的に削除される。
●スレーブのI/Oスレッド
・マスタから得たデータ(更新ログ)をリレーログに記録する。
●スレーブのSQLスレッド
・リレーログを読み取ってひたすらクエリを実行する。
●ポジション情報
・マスタのホスト名、ログファイル名、ログファイル中の処理したポイントといった情報。
・master.infoで管理。(以下のSQL文で確認 SHOW SLAVE STATUS)
書籍にはMySQLでサポートしているのは「非同期のデータレプリケーション」って書いてあるけど、MySQL5.5から「凖同期レプリケーション」も用意されている。これは先週参加したオープンソースカンファレンスで説明聞いたからよくわかる。ちょっとずつ機能アップしているんだな~
ちなみに以下のサイトはポスグレとMySQLのレプリケーション機能について比較してある。
(参考サイト)
レプリケーション比較 PostgreSQL vs. MySQL
- 関連記事