Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 26.8Mb
PDF (A4) - 26.9Mb
HTML Download (TGZ) - 7.1Mb
HTML Download (Zip) - 7.2Mb


18.6 MySQL Cluster レプリケーション

MySQL Cluster は、通常は単にレプリケーションと呼ばれる非同期レプリケーションをサポートしています。このセクションでは、MySQL Cluster として動作する、あるグループのコンピュータが、別のコンピュータまたはコンピュータのグループに複製する構成を、セットアップしたり管理したりする方法について説明します。標準の MySQL レプリケーションに関してはこのマニュアルで別途説明しています。(第17章「レプリケーションを参照してください。)

通常 (非クラスタ) のレプリケーションは、マスターサーバーと スレーブサーバー、複製される操作とデータの元になるマスター、およびその受け手であるスレーブによって行われています。概念的にはレプリケーションは非常に似ていますが、MySQL Cluster では、実際には複雑さが増す可能性があります。2 つの完全なクラスタ間のレプリケーションを含む多くの異なる構成を対象にするために、MySQL Cluster が拡張される場合があるためです。MySQL Cluster 自身は、クラスタリングの機能を NDB ストレージエンジンに依存していますが、複製されたテーブルのスレーブのコピーにストレージエンジンとして NDB を使用する必要はありません (NDB から別のストレージエンジンへのレプリケーションを参照してください)。ただし、可用性を最大にするため、ある MySQL Cluster から別の MySQL Cluster に複製できます (複製することが望ましい)。また、ここで説明するのはこのシナリオであり、次の図で示すとおりです。

MySQL クラスタ間のレプリケーションレイアウト

このシナリオでは、レプリケーションプロセスは、マスタークラスタの連続的な状態のログが取られ、スレーブクラスタに保存されるというプロセスです。このプロセスは NDB バイナリログインジェクタスレッドとして知られる特別なスレッドによって実行されます。このスレッドは各 MySQL サーバーで動作し、バイナリログ (binlog) を作成します。このスレッドは、バイナリログを作成するクラスタのすべての変更 (MySQL Server を介して影響を受けた変更だけではありません) を、シリアライゼーションの正しい順序でバイナリログに挿入します。ここでは、MySQL のレプリケーションマスターとレプリケーションスレーブのサーバーをレプリケーションサーバーまたはレプリケーションノードと呼び、そのサーバー間のデータフローまたは通信回線をレプリケーションチャネルと呼びます。

MySQL Cluster および MySQL Cluster レプリケーションを使用したポイントインタイムリカバリの実行の情報につては、セクション18.6.9.2「MySQL Cluster レプリケーションを使用したポイントインタイムリカバリ」を参照してください。

NDB API _slave ステータス変数  NDB API カウンタは、MySQL Cluster のレプリケーションスレーブで高度なモニタリング監視機能を提供できます。これらは NDB 統計の _slave ステータス変数として実装されます。この内容が見られるのは、SHOW STATUS の出力の中、または MySQL Cluster レプリケーションでスレーブとして動作している MySQL Server に接続された mysql クライアントセッションの SESSION_STATUS または GLOBAL_STATUS テーブルに対してクエリーを発行した結果の中です。複製された NDB テーブルに作用するステートメントの実行の前後でこれらのステータス変数の値を比較することで、NDB API レベルでスレーブによって行われる、対応したアクションを監視できます。これにより、MySQL Cluster レプリケーションのモニタリングまたはトラブルシューティングのときに役に立つ場合があります。追加情報については、セクション18.5.15「NDB API 統計のカウンタと変数」を参照してください。

NDB テーブルから非 NDB テーブルへのレプリケーション  マスターとして動作する MySQL Cluster から、スレーブ mysqldInnoDB または MyISAM などのほかの MySQL ストレージエンジンを使用するテーブルに NDB テーブルを複製できます。これには多くの条件が適用されます。詳細については、NDB から別のストレージエンジンへのレプリケーションおよびNDB から非トランザクションストレージエンジンへのレプリケーションを参照してください。