文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  從二進位版本在 Windows 上安裝 NDB 叢集

25.3.2.1 從二進位版本在 Windows 上安裝 NDB 叢集

本節描述使用 Oracle 提供的二進位免安裝NDB 叢集版本,在 Windows 上進行 NDB 叢集的基本安裝,使用本節開頭概述的相同 4 節點設定(請參閱第 25.3 節,「NDB 叢集安裝」),如下表所示

表 25.6 範例叢集中節點的網路位址

節點 IP 位址
管理節點 (mgmd) 198.51.100.10
SQL 節點 (mysqld) 198.51.100.20
資料節點「A」 (ndbd) 198.51.100.30
資料節點「B」 (ndbd) 198.51.100.40

如同在其他平台上,執行 SQL 節點的 NDB 叢集主機電腦上必須安裝 MySQL 伺服器二進位檔 (mysqld.exe)。您也應該在此主機上擁有 MySQL 用戶端 (mysql.exe)。對於管理節點和資料節點,不需要安裝 MySQL 伺服器二進位檔;但是,每個管理節點都需要管理伺服器精靈 (ndb_mgmd.exe);每個資料節點都需要資料節點精靈 (ndbd.exendbmtd.exe)。在此範例中,我們將 ndbd.exe 稱為資料節點可執行檔,但您可以改為以完全相同的方式安裝此程式的多執行緒版本 ndbmtd.exe。您也應該在管理伺服器主機上安裝管理用戶端 (ndb_mgm.exe)。本節涵蓋安裝每種 NDB 叢集節點類型正確的 Windows 二進位檔所需的步驟。

注意

與其他 Windows 程式一樣,NDB 叢集可執行檔的名稱具有 .exe 副檔名。但是,從命令列叫用這些程式時,不需要包含 .exe 副檔名。因此,我們通常在本文件中將這些程式簡稱為 mysqldmysqlndb_mgmd 等等。您應該瞭解,無論我們是指(例如)mysqld 還是 mysqld.exe,這兩個名稱都表示相同的東西(MySQL 伺服器程式)。

若要使用 Oracle 的 免安裝 二進位檔設定 NDB 叢集,安裝程序的第一步是從 https://mysqldev.dev.org.tw/downloads/cluster/ 下載最新的 NDB 叢集 Windows ZIP 二進位封存檔。此封存檔的檔案名稱格式為 mysql-cluster-gpl-ver-winarch.zip,其中 verNDB 儲存引擎版本(例如 9.0.0),而 arch 是架構(32 代表 32 位元二進位檔,而 64 代表 64 位元二進位檔)。例如,適用於 64 位元 Windows 系統的 NDB 叢集 9.0.0 封存檔名為 mysql-cluster-gpl-9.0.0-win64.zip

您可以在 32 位元和 64 位元版本的 Windows 上執行 32 位元 NDB 叢集二進位檔;但是,64 位元 NDB 叢集二進位檔只能在 64 位元版本的 Windows 上使用。如果您在具有 64 位元 CPU 的電腦上使用 32 位元版本的 Windows,則必須使用 32 位元 NDB 叢集二進位檔。

為了盡量減少從網際網路下載或在機器之間複製的檔案數量,我們從您打算執行 SQL 節點的電腦開始。

SQL 節點。  我們假設您已將封存檔的複本放置在 IP 位址為 198.51.100.20 的電腦上的 C:\Documents and Settings\username\My Documents\Downloads 目錄中,其中 username 是目前使用者的名稱。(您可以在命令列上使用 ECHO %USERNAME% 取得此名稱。)若要以 Windows 服務安裝和執行 NDB 叢集可執行檔,此使用者應該是 Administrators 群組的成員。

解壓縮封存檔中的所有檔案。與 Windows 檔案總管整合的解壓縮精靈足以執行此工作。(如果您使用不同的封存檔程式,請務必確定它會解壓縮封存檔中的所有檔案和目錄,並保留封存檔的目錄結構。)當系統詢問目標目錄時,請輸入 C:\,這會導致解壓縮精靈將封存檔解壓縮到 C:\mysql-cluster-gpl-ver-winarch 目錄中。將此目錄重新命名為 C:\mysql

可以將 NDB 叢集二進位檔安裝到 C:\mysql\bin 以外的目錄;但是,如果這麼做,您必須據此修改本程序中顯示的路徑。特別是,如果 MySQL 伺服器 (SQL 節點) 二進位檔安裝到 C:\mysqlC:\Program Files\MySQL\MySQL Server 9.0 以外的位置,或者 SQL 節點的資料目錄位於 C:\mysql\dataC:\Program Files\MySQL\MySQL Server 9.0\data 以外的位置,則在啟動 SQL 節點時,必須在命令列上使用其他組態選項,或將其新增至 my.inimy.cnf 檔案。如需有關設定 MySQL 伺服器在非標準位置執行的詳細資訊,請參閱第 2.3.3 節,「組態:手動」

若要讓支援 NDB 叢集的 MySQL 伺服器以 NDB 叢集的一部分執行,必須使用 --ndbcluster--ndb-connectstring 選項啟動。雖然您可以在命令列上指定這些選項,但通常將其放置在選項檔案中會更方便。若要這麼做,請在記事本或其他文字編輯器中建立新的文字檔案。將下列組態資訊輸入此檔案

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

如果需要,您可以新增此 MySQL 伺服器使用的其他選項(請參閱第 2.3.3.2 節,「建立選項檔案」),但該檔案至少必須包含顯示的選項。將此檔案儲存為 C:\mysql\my.ini。這會完成 SQL 節點的安裝和設定。

資料節點。  Windows 主機上的 NDB 叢集資料節點只需要單一可執行檔,也就是 ndbd.exendbmtd.exe 其中之一。在此範例中,我們假設您使用的是 ndbd.exe,但是使用 ndbmtd.exe 時,也會套用相同的指示。在您想要執行資料節點的每台電腦(IP 位址為 198.51.100.30 和 198.51.100.40 的電腦)上,建立 C:\mysqlC:\mysql\binC:\mysql\cluster-data 目錄;然後,在您下載和解壓縮 免安裝 封存檔的電腦上,找出 C:\mysql\bin 目錄中的 ndbd.exe。將此檔案複製到兩個資料節點主機上各自的 C:\mysql\bin 目錄中。

若要作為 NDB 叢集的一部分運作,每個資料節點都必須提供管理伺服器的位址或主機名稱。您可以在命令列上使用 --ndb-connectstring-c 選項在啟動每個資料節點程序時,提供此資訊。但是,通常最好將此資訊放入選項檔案中。若要這麼做,請在記事本或其他文字編輯器中建立新的文字檔案,然後輸入下列文字

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

將此檔案儲存為資料節點主機上的 C:\mysql\my.ini。建立另一個包含相同資訊的文字檔案,並將其儲存為另一個資料節點主機上的 C:mysql\my.ini,或將 my.ini 檔案從第一個資料節點主機複製到第二個,確保將副本放置在第二個資料節點的 C:\mysql 目錄中。兩個資料節點主機現在都已準備好在 NDB Cluster 中使用,只剩下管理節點需要安裝和設定。

管理節點。用於託管 NDB Cluster 管理節點的電腦上唯一需要的執行程式是管理伺服器程式 ndb_mgmd.exe。但是,為了在啟動 NDB Cluster 後進行管理,您還應該在與管理伺服器相同的機器上安裝 NDB Cluster 管理客戶端程式 ndb_mgm.exe。在您下載並解壓縮 no-install 封存檔的機器上找到這兩個程式;這應該是 SQL 節點主機上的目錄 C:\mysql\bin。在具有 IP 位址 198.51.100.10 的電腦上建立目錄 C:\mysql\bin,然後將這兩個程式複製到此目錄。

現在您應該建立兩個組態檔供 ndb_mgmd.exe 使用。

  1. 一個本機組態檔,用於提供特定於管理節點本身的組態資料。通常,此檔案只需要提供 NDB Cluster 全域組態檔的位置(請參閱項目 2)。

    若要建立此檔案,請在記事本或其他文字編輯器中啟動一個新的文字檔案,然後輸入以下資訊

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

    將此檔案儲存為文字檔案 C:\mysql\bin\my.ini

  2. 一個全域組態檔,管理節點可以從中獲取管理整個 NDB Cluster 的組態資訊。至少,此檔案必須包含 NDB Cluster 中每個節點的部分,以及管理節點和所有資料節點的 IP 位址或主機名稱(HostName 組態參數)。也建議包含以下其他資訊:

    使用記事本等文字編輯器建立一個新的文字檔案,然後輸入以下資訊

    [ndbd default]
    # Options affecting ndbd processes on all data nodes:
    NoOfReplicas=2                      # Number of fragment 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=198.51.100.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=198.51.100.30          # Hostname or IP address
    
    [ndbd]
    # Options for data node "B":
    HostName=198.51.100.40          # Hostname or IP address
    
    [mysqld]
    # SQL node options:
    HostName=198.51.100.20          # Hostname or IP address

    將此檔案儲存為文字檔案 C:\mysql\bin\config.ini

重要

在 Windows 上使用 NDB Cluster 使用的程式選項或組態檔中指定目錄路徑時,不能使用單個反斜線字元(\)。相反,您必須使用第二個反斜線 (\\) 來逸出每個反斜線字元,或者使用正斜線字元 (/) 來取代反斜線。例如,以下來自 NDB 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 上 NDB Cluster 程式選項和組態檔中使用的目錄路徑中使用正斜線。