文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
手冊頁 (TGZ) - 258.5Kb
手冊頁 (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  NDB Cluster 的初始配置

25.3.3 NDB Cluster 的初始配置

在本節中,我們將討論如何透過建立和編輯組態檔案來手動配置已安裝的 NDB Cluster。

對於我們的四節點、四主機 NDB Cluster (請參閱叢集節點和主機電腦),需要寫入四個組態檔案,每個節點主機一個。

  • 每個資料節點或 SQL 節點都需要一個 my.cnf 檔案,該檔案提供兩個資訊:一個 連線字串,告訴節點在哪裡找到管理節點,以及一行告知此主機上的 MySQL 伺服器 (託管資料節點的機器) 啟用 NDBCLUSTER 儲存引擎。

    如需有關連線字串的更多資訊,請參閱第 25.4.3.3 節,「NDB Cluster 連線字串」

  • 管理節點需要一個 config.ini 檔案,告訴它要維護多少個片段複本、為每個資料節點上的資料和索引配置多少記憶體、在哪裡找到資料節點、在每個資料節點上將資料儲存到磁碟的何處,以及在哪裡找到任何 SQL 節點。

配置資料節點和 SQL 節點。資料節點所需的 my.cnf 檔案相當簡單。組態檔案應位於 /etc 目錄中,並可使用任何文字編輯器進行編輯。(如果檔案不存在,請建立檔案。)例如

$> vi /etc/my.cnf
注意

我們在這裡展示使用 vi 來建立檔案,但任何文字編輯器都應該可以正常運作。

在我們的範例設定中,每個資料節點和 SQL 節點的 my.cnf 都應該如下所示

[mysqld]
# Options for mysqld process:
ndbcluster                      # run NDB storage engine

[mysql_cluster]
# Options for NDB Cluster processes:
ndb-connectstring=198.51.100.10  # location of management server

輸入上述資訊後,儲存此檔案並退出文字編輯器。對託管資料節點 A、資料節點 B 和 SQL 節點的機器執行此操作。

重要

一旦您啟動了一個 mysqld 程序,並且 my.cnf 檔案的 [mysqld][mysql_cluster] 區段中包含 ndbclusterndb-connectstring 參數 (如先前所示),您就無法在尚未實際啟動叢集的情況下執行任何 CREATE TABLEALTER TABLE 陳述式。否則,這些陳述式會失敗並出現錯誤。這是設計使然。

配置管理節點。配置管理節點的第一步是建立可以找到組態檔案的目錄,然後建立檔案本身。例如 (以 root 身分執行)

$> mkdir /var/lib/mysql-cluster
$> cd /var/lib/mysql-cluster
$> vi config.ini

對於我們的代表性設定,config.ini 檔案應如下所示

[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2    # Number of fragment replicas
DataMemory=98M    # How much memory to allocate for data storage

[ndb_mgmd]
# Management process options:
HostName=198.51.100.10          # Hostname or IP address of management node
DataDir=/var/lib/mysql-cluster  # 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
NodeId=2                        # Node ID for this data node
DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[ndbd]
# Options for data node "B":
HostName=198.51.100.40          # Hostname or IP address
NodeId=3                        # Node ID for this data node
DataDir=/usr/local/mysql/data   # Directory for this data node's data files

[mysqld]
# SQL node options:
HostName=198.51.100.20          # Hostname or IP address
                                # (additional mysqld connections can be
                                # specified for this node for various
                                # purposes such as running ndb_restore)
注意

可以從 https://mysqldev.dev.org.tw/doc/index-other.html 下載 world 資料庫。

在建立所有組態檔案並指定這些最低選項後,您就可以繼續啟動叢集並驗證所有程序是否正在執行。我們將在第 25.3.4 節,「NDB Cluster 的初始啟動」中討論如何執行此操作。

有關可用的 NDB Cluster 配置參數及其用途的更多詳細資訊,請參閱第 25.4.3 節,「NDB Cluster 組態檔案」第 25.4 節,「NDB Cluster 的配置」。有關 NDB Cluster 與建立備份相關的配置,請參閱第 25.6.8.3 節,「NDB Cluster 備份的配置」

注意

叢集管理節點的預設埠為 1186;資料節點的預設埠為 2202。但是,叢集可以自動從已釋放的埠中分配資料節點的埠。