スレーブ レプリケーション サーバは、データ
ディレクトリに ファイルを2
つ作成します。これらのファイルは
status files (ステータス ファイル)
と呼ばれ、デフォルトで
master.info
および
relay-log.info
というファイル名です。このデフォルトのファイル名は
--master-info-file
および
--relay-log-info-file
オプションを使用して変更できます。詳しくは
項5.1.3. 「レプリケーションのオプションと変数」
を参照してください。
この 2 つ のステータス ファイルは、SHOW
SLAVE STATUS
ステートメントの出力に表示される情報を含みます。(コマンドの説明については
項12.6.2. 「スレーブ サーバをコントロールする SQL
ステートメント」
を参照)スタータス
ファイルはディスクに保存されるため、スレーブ
サーバがシャットダウンした場合でも保持されます。そのため、次回にスレーブが起動する際には、スレーブがこの
2 つのファイル (マスタのバイナリ ログおよび
スレーブ自体のリレー ログ)
から前回の進み具合を読み取ります。
I/O スレッドは master.info
ファイルを更新します。以下のテーブルは、ファイル内のライン
(行) と SHOW SLAVE STATUS
で表示されるカラムの対応表です。
行 | カラム ステータス | 説明 |
1 | ファイル内のライン番号 | |
2 | Master_Log_File |
マスタのバイナリ ログ名。このログはその時点でマスタ側から読み込み中。 |
3 | Read_Master_Log_Pos |
マスタのバイナリ ログ内の現在位置。その時点分のマスタの読み込みは完了している。 |
4 | Master_Host |
マスタのホスト名 |
5 | Master_User |
マスタに接続するためのユーザ名 |
6 | パスワード (SHOW SLAVE STATUS
では表示されない) |
マスタに接続するためのパスワード |
7 | Master_Port |
マスタに接続するためのネットワーク ポート |
8 | Connect_Retry |
インターバル時間(秒)。スレーブがマスタに再接続を試行する際に待機する時間 |
9 | Master_SSL_Allowed |
サーバが SSL 接続をサポートするかどうかを示す |
10 | Master_SSL_CA_File |
証明機関 (Certificate Authority) に使用したファイル |
11 | Master_SSL_CA_Path |
証明機関 (CA) へのパス |
12 | Master_SSL_Cert |
SSL 証明のファイル名 |
13 | Master_SSL_Cipher |
SSL 接続に使用している暗号法 (サイファ) 名 |
14 | Master_SSL_Key |
SSL キー ファイル名 |
SQL スレッドは relay-log.info
ファイルを更新します。以下のテーブルは、ファイル内のライン
(行) と SHOW SLAVE STATUS
で表示されるカラムの対応表です。
行 | スタータス カラム | 説明 |
1 | Relay_Log_File |
現行のリレー ログ ファイル名 |
2 | Relay_Log_Pos |
リレー ログ ファイル内の現在位置。この位置までのイベントはスレーブのデータベースで実行済み。 |
3 | Relay_Master_Log_File |
マスタの (リレー ログ ファイルで読み取られたイベントの) バイナリ ログ ファイル名 |
4 | Exec_Master_Log_Pos |
(既に実行されたイベントの) マスタのバイナリ ログ ファイル内の対応位置 |
注意:relay-log.info
ファイルをディスクにフラッシュしていない場合、SHOW
SLAVE STATES
コマンド表示のステート
(状態) および relay-log.info
ファイルの内容が一致しない可能性があります。スレーブの
relay-log.info
はオフラインのときにだけ閲覧することをお勧めします。
(mysqld
が稼動していないときなど)システムが稼動している場合は、SHOW
SLAVE STATUS
を使用してください。