[+/-]
mysqldump
を使用したデータ
スナップショットの制作この章は、MySQL サーバのレプリケーションを完全に行うためのセットアップについて説明します。レプリケーションのセットアップには様々な方法があり、レプリケーションをどのようにセットアップするか、そしてマスタのデータベースにデータがすでに存在するかどうかにより、その方法が変わります。
すべてのレプリケーション セットアップに必要とされる一般的なタスクは次の通りです。
認証用に独立したユーザを作成する。これは、スレーブがマスタのバイナリ ログを複製するために読み込むときに使用する。項5.1.1.1. 「レプリケーション ユーザの作成」 を参照。
バイナリ ログをサポートするためにマスタを設定し、ユニーク ID を設定する。項5.1.1.2. 「レプリケーション マスタのコンフィギュレーション設定」 参照。
マスタと接続するそれぞれのスレーブでユニーク ID を設定する。項5.1.1.3. 「レプリケーション スレーブのコンフィギュレーション設定」 を参照。
データ スナップショットまたはレプリケーションを開始する前に、マスタのバイナリ ログの位置を記録する。この情報はスレーブを設定するときに必要になり、これによりスレーブはバイナリ ログ内のどこからイベントを実行するかを認識する。項5.1.1.4. 「マスタ レプリケーション情報の取得」 を参照。
すでにマスタにデータがある場合、スレーブと元データを同期化し、データベースのデータ
スナップショットを作成する。スナップショットには、mysqldump
を使用する
(項5.1.1.5. 「mysqldump
を使用したデータ
スナップショットの制作」)
か、またはデータ ファイルを直接コピーする
(項5.1.1.6. 「生データ ファイルでデータ スナップショットの作成」)。
Master のセッティングでスレーブを設定する。例:ホスト名、ログイン認証、バイナリ ログ名、位置など。項5.1.1.10. 「マスタ コンフィギュレーションのスレーブでの設定」 を参照。
ここまでの基本的なオプションを設定後、次に示すレプリケーション セットアップの手順に従います。これにはいくつかの方法があります。
新たな MySQL マスタおよび複数のスレーブをセットアップする場合、交換するデータがまだ存在しないということから、コンフィギュレーションをセットアップする必要がある。この状況でのレプリケーション セットアップのガイドは 項5.1.1.7. 「新たなマスタとスレーブのレプリケーション セットアップ」 を参照。
MySQL サーバがすでに稼動している場合、つまりレプリケーションを開始する前にスレーブにデータを転送する必要があり、バイナリ ログ構成をしていない状況下で、処理中に短時間 MySQL サーバをシャットダウンできるときは、項5.1.1.8. 「既存データでのレプリケーション セットアップ」 を参照。
既存のレプリケーション環境で、追加サーバをセットアップ、そしてマスタに影響することなくスレーブをセットアップできる場合は、項5.1.1.9. 「既存のレプリケーション環境へのスレーブ追加」 を参照。
MySQL レプリケーション セットアップの管理者は、この節を十分に読み、項12.6.1. 「マスタ サーバをコントロールする SQL ステートメント」 および 項12.6.2. 「スレーブ サーバをコントロールする SQL ステートメント」 のすべてのステートメントを試行してください。項5.1.3. 「レプリケーションのオプションと変数」 に示すレプリケーションのスタートアップ オプションに関しても十分な理解が必要です。
ノートとして、セットアップ
プロセス中の特定のステップで、SUPER
権限を必要とします。この権限がない場合は、レプリケーションはできません。