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.2.3.1 Windows でのバイナリリリースからの MySQL Cluster のインストール

このセクションでは、オラクルが提供する MySQL Cluster の no-install バイナリリリースを使用した MySQL Cluster の基本的なインストールについて説明します。ここでは、次の表に示すように、このセクションの冒頭 (セクション18.2「MySQL Cluster のインストール」を参照してください) で概説したのと同じ 4 ノードのセットアップを使用します。

ノード IP アドレス
管理 (MGMD) ノード 192.168.0.10
MySQL サーバー (SQL) ノード 192.168.0.20
データ (NDBD) ノード "A" 192.168.0.30
データ (NDBD) ノード "B" 192.168.0.40

ほかのプラットフォームと同様に、SQL ノードを実行する MySQL Cluster ホストコンピュータには MySQL Server バイナリ (mysqld.exe) をインストールする必要があります。このホストには MySQL クライアント (mysql.exe) も配置するようにしてください。管理ノードおよびデータノードに MySQL Server バイナリをインストールする必要はありません。各管理サーバーには、管理サーバーデーモン (ndb_mgmd.exe) が必要です。各データノードには、データノードデーモン (ndbd.exe または ndbmtd.exe) が必要です。この例では ndbd.exe をデータノード実行可能ファイルと呼びますが、代わりにこのプログラムのマルチスレッドバージョンである ndbmtd.exe をまったく同じ方法でインストールできます。管理サーバーホストには、管理クライアント (ndb_mgm.exe) もインストールするようにしてください。このセクションでは、MySQL Cluster ノードの各タイプに対応する適切な Windows バイナリをインストールするのに必要なステップについて説明します。

注記

ほかの Windows プログラムと同様に、MySQL Cluster 実行可能ファイルの名前には .exe ファイル拡張子が付けられています。ただし、コマンド行からこれらのプログラムを起動するときに .exe 拡張子を含める必要はありません。そのため、このドキュメントでは多くの場合、これらのプログラムを mysqldmysqlndb_mgmd などと呼びます。ここでは、(たとえば) mysqldmysqld.exe のどちらの呼び方であっても、どちらの名前も同じもの (MySQL Server プログラム) を意味しています。

オラクルの no-install バイナリを使用して MySQL Cluster をセットアップする場合は、インストールプロセスの最初のステップとして、https://dev.mysql.com/downloads/cluster/ から最新の MySQL Cluster Windows バイナリアーカイブをダウンロードします。このアーカイブには、mysql-cluster-gpl-noinstall-ver-winarch.zip という形式のファイル名が付けられます。verNDB ストレージエンジンのバージョン (7.3.1 など) であり、arch はアーキテクチャー (32 ビットバイナリの場合は 32、64 ビットバイナリの場合は 64) です。たとえば、MySQL Cluster NDB 7.3.1 の 32 ビット Windows システム用 no-install アーカイブの名前は mysql-cluster-gpl-noinstall-7.3.1-win32.zip です。

32 ビット MySQL Cluster バイナリは Windows の 32 ビットと 64 ビットの両方のバージョンで実行できますが、64 ビット MySQL Cluster バイナリは Windows の 64 ビットバージョンでのみ使用できます。64 ビット CPU を搭載したコンピュータで Windows の 32 ビットバージョンを使用する場合は、32 ビット MySQL Cluster バイナリを使用する必要があります。

インターネットからダウンロードしたりマシン間でコピーしたりする必要があるファイルの数を最小限に抑えるため、ここでは SQL ノードを実行するコンピュータから始めます。

SQL ノード  ここでは、IP アドレスが 192.168.0.20 であるコンピュータ上の C:\Documents and Settings\username\My Documents\Downloads (username は現在のユーザーの名前です) ディレクトリに no-install アーカイブのコピーが配置されていると仮定します。(この名前は、コマンド行で ECHO %USERNAME% を使用すると表示されます。)MySQL Cluster 実行可能ファイルを Windows サービスとしてインストールおよび実行するには、このユーザーが Administrators グループのメンバーになります。

アーカイブからすべてのファイルを抽出します。このタスクには、Windows Explorer に組み込まれた抽出ウィザードが適しています。(別のアーカイブプログラムを使用する場合は、アーカイブからすべてのファイルとディレクトリが抽出されたこと、アーカイブのディレクトリ構造が維持されていることを確認してください。)出力先のディレクトリを求められたら、C:\ と入力します。抽出ウィザードによってディレクトリ C:\mysql-cluster-gpl-noinstall-ver-winarch にアーカイブが抽出されます。このディレクトリの名前を C:\mysql に変更します。

MySQL Cluster バイナリを C:\mysql\bin 以外のディレクトリにインストールすることもできますが、その場合は、この手順に示されているパスをそれに合わせて変更する必要があります。特に、MySQL Server (SQL ノード) バイナリを C:\mysql または C:\Program Files\MySQL\MySQL Server 5.6 以外の場所にインストールした場合や、SQL ノードのデータディレクトリが C:\mysql\data または C:\Program Files\MySQL\MySQL Server 5.6\data 以外の場所にある場合は、SQL ノードの起動時に、追加の構成オプションをコマンド行で使用するか、my.ini または my.cnf ファイルに追加する必要があります。標準以外の場所で実行するように MySQL Server を構成する方法の詳細は、セクション2.3.5「非インストール Zip アーカイブを使用して Microsoft Windows に MySQL をインストールする」を参照してください。

MySQL Cluster サポートを含む MySQL Server を MySQL Cluster の一部として実行するには、--ndbcluster および --ndb-connectstring オプションを指定して起動する必要があります。これらのオプションは、コマンド行で指定することもできますが、通常はオプションファイルに設定する方が便利です。そのためには、メモ帳などのテキストエディタで新しいテキストファイルを作成します。このファイルに次の構成情報を入力します。

[mysqld]
# Options for mysqld process:
ndbcluster                      # run NDB storage engine
ndb-connectstring=192.168.0.10  # location of management server

この MySQL Server が使用するほかのオプション (セクション2.3.5.2「オプションファイルの作成」を参照してください) を必要に応じて追加できますが、このファイルには少なくともここに示したオプションを含める必要があります。このファイルを C:\mysql\my.ini として保存します。これで、SQL ノードのインストールとセットアップが完了します。

データノード  Windows ホストの MySQL Cluster データノードには、ndbd.exe または ndbmtd.exe のいずれか 1 つの実行可能ファイルのみが必要です。この例では、ndbd.exe を使用すると仮定しますが、ndbmtd.exe を使用するときも同じ手順が適用されます。データノードを実行する各コンピュータ (IP アドレスが 192.168.0.30 および 192.168.0.40 のコンピュータ) で、C:\mysqlC:\mysql\bin、および C:\mysql\cluster-data の各ディレクトリを作成します。次に、no-install アーカイブをダウンロードして抽出したコンピュータで、C:\mysql\bin ディレクトリ内の ndbd.exe を見つけます。このファイルを 2 台のデータノードホストの C:\mysql\bin ディレクトリにそれぞれコピーします。

データノードを MySQL Cluster の一部として機能させるには、各ノードに対して管理サーバーのアドレスまたはホスト名を指定する必要があります。この情報を指定するには、各データノードプロセスの起動時にコマンド行で --ndb-connectstring または -c オプションを使用します。ただし、通常はオプションファイルにこの情報を指定することをお勧めします。そのためには、メモ帳などのテキストエディタで新しいテキストファイルを作成して、次のテキストを入力します。

[mysql_cluster]
# Options for data node process:
ndb-connectstring=192.168.0.10  # location of management server

このファイルをデータノードホストに C:\mysql\my.ini として保存します。もう一方のデータノードホストで同じ内容を含むテキストファイルをもう 1 つ作成し、それを C:mysql\my.ini として保存するか、my.ini ファイルを 1 つ目のデータノードホストから 2 つ目のデータノードホストにコピーし、そのコピーを 2 つ目のデータノードの C:\mysql ディレクトリに確実に配置します。これで、両方のデータノードホストを MySQL Cluster で使用できるようになりました。あとは、管理ノードをインストールして構成するだけです。

管理ノード  MySQL Cluster 管理ノードのホストとして使用するコンピュータに必要な実行可能プログラムは、管理サーバープログラム ndb_mgmd.exe だけです。ただし、起動された MySQL Cluster を管理するため、管理サーバーと同じマシンに MySQL Cluster 管理クライアントプログラム ndb_mgm.exe もインストールしてください。no-install アーカイブをダウンロードして抽出したマシンで、これら 2 つのプログラムを見つけます。これは、SQL ノードホストの C:\mysql\bin ディレクトリになります。IP アドレスが 192.168.0.10 であるコンピュータに C:\mysql\bin ディレクトリを作成し、両方のプログラムをこのディレクトリにコピーします。

ここで、ndb_mgmd.exe が使用する 2 つの構成ファイルを作成してください。

  1. 管理ノード自体に固有の構成データを提供するローカル構成ファイル。通常、このファイルに指定する必要があるのは、MySQL Cluster グローバル構成ファイル (項目 2 を参照してください) の場所だけです。

    このファイルを作成するには、メモ帳などのテキストエディタで新しいテキストファイルを作成し、次の情報を入力します。

    [mysql_cluster]
    # Options for management node process
    config-file=C:/mysql/bin/config.ini

    このファイルをプレーンテキストファイル C:\mysql\bin\my.ini として保存します。

  2. 管理ノードが MySQL Cluster 全体を制御する構成情報を取得できるグローバル構成ファイル。このファイルには、少なくとも MySQL Cluster 内の各ノード用のセクションと、管理ノードおよびすべてのデータノードの IP アドレスまたはホスト名 (HostName 構成パラメータ) が含まれている必要があります。また、次の追加情報も含めることをお勧めします。

    • SQL ノードの IP アドレスまたはホスト名

    • 各データノードに割り当てられたデータメモリーおよびインデックスメモリー (DataMemory および IndexMemory 構成パラメータ)

    • レプリカの数 (NoOfReplicas 構成パラメータを使用します。セクション18.1.2「MySQL Cluster のノード、ノードグループ、レプリカ、およびパーティション」を参照してください)

    • 各データノードがデータおよびログファイルを格納するディレクトリと、管理ノードがログファイルを保持するディレクトリ (どちらの場合も、DataDir 構成パラメータ)

    メモ帳などのテキストエディタを使用して新しいテキストファイルを作成し、次の情報を入力します。

    [ndbd default]
    # Options affecting ndbd processes on all data nodes:
    NoOfReplicas=2                      # Number of replicas
    DataDir=C:/mysql/cluster-data       # Directory for each data node's data files
                                        # Forward slashes used in directory path,
                                        # rather than backslashes. This is correct;
                                        # see Important note in text
    DataMemory=80M    # Memory allocated to data storage
    IndexMemory=18M   # Memory allocated to index storage
                      # For DataMemory and IndexMemory, we have used the
                      # default values. Since the "world" database takes up
                      # only about 500KB, this should be more than enough for
                      # this example Cluster setup.
    
    [ndb_mgmd]
    # Management process options:
    HostName=192.168.0.10               # Hostname or IP address of management node
    DataDir=C:/mysql/bin/cluster-logs   # Directory for management node log files
    
    [ndbd]
    # Options for data node "A":
                                    # (one [ndbd] section per data node)
    HostName=192.168.0.30           # Hostname or IP address
    
    [ndbd]
    # Options for data node "B":
    HostName=192.168.0.40           # Hostname or IP address
    
    [mysqld]
    # SQL node options:
    HostName=192.168.0.20           # Hostname or IP address

    このファイルをプレーンテキストファイル C:\mysql\bin\config.ini として保存します。

重要

Windows 上の MySQL Cluster が使用するプログラムオプションまたは構成ファイルでは、ディレクトリパスを指定するときに単独のバックスラッシュ文字 (\) を使用できません。代わりに、個々のバックスラッシュ文字を 2 つ目のバックスラッシュ (\\) でエスケープするか、バックスラッシュをスラッシュ文字 (/) に置き換えてください。たとえば、MySQL Cluster の config.ini ファイルの [ndb_mgmd] セクションから抜粋した次の行は機能しません。

DataDir=C:\mysql\bin\cluster-logs

代わりに、次のいずれかを使用できます。

DataDir=C:\\mysql\\bin\\cluster-logs  # Escaped backslashes
DataDir=C:/mysql/bin/cluster-logs     # Forward slashes

簡潔さと読みやすさのため、Windows 上の MySQL Cluster プログラムのオプションや構成ファイルで使用するディレクトリパスには、スラッシュを使用することをお勧めします。


User Comments
User comments in this section are, as the name implies, provided by MySQL users. The MySQL documentation team is not responsible for, nor do they endorse, any of the information provided here.
Sign Up Login You must be logged in to post a comment.