1. 程式人生 > >mysql cluster配置

mysql cluster配置

init literal thread memory sta sel rep 5.7 property

依賴包要求:cmake gcc gcc-c++ ncurses Perl

在7.3以及更高的版本中, WITH_NDB_JAVA是默認啟動的,需要配置JAVA環境,WITH_CLASSPATH配置JAVA目錄。如果不啟用,可以: -DWITH_NDB_JAVA=OFF。

CMAKE配置選項:

具體參閱:https://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html#cmake-general-options

SQL節點存儲的是表結構,數據節點存儲的是數據文件。

配置參數:

數據節點配置參數參閱:https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-params-ndbd.html https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-ndbd-definition.html

SQL節點配置參數參閱:https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-params-api.html https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-api-definition.html

管理節點參數參閱:https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-params-mgmd.html https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-mgm-definition.html

其他參數參閱:https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-params-other.html

SQL節點與數據節點配置(my.cnf): #SQL節點與數據節點配置都是一樣的,在管理節點上區分兩個節點。

[mysqld]

ndbcluster

[mysql_cluster]

ndb-connectstring=198.51.100.10 #指向管理服務器

管理節點(config.ini):

[ndbd default] #數據節點所有默認配置

NoOfReplicas=2 #一份數據在集群中的存在份數,與數據節點對應

DataMemory=80M #裝載到內存中的數據大小

IndexMemory=18M #裝載到內存中索引大小

ServerPort=2202 #默認端口

LockPagesInMainMemory=1

NoOfFragmentLogFiles=300

DataDir=/usr/local/mysql/data

MaxNoOfConcurrentOperations=100000

SchedulerSpinTimer=400

SchedulerExecutionTimer=100

RealTimeScheduler=1

TimeBetweenGlobalCheckpoints=1000

TimeBetweenEpochs=200

RedoBuffer=32M

MaxNoOfTables=1024

MaxNoOfOrderedIndexes=256

[tcp default]

SendBufferMemory=2M

ReceiveBufferMemory=2M

[ndb_mgmd] #管理節點

HostName=198.51.100.10 #IP或者hostname,管理節點

DataDir=/usr/local/mysql/data #數據文件存放目錄

[ndbd] #數據節點節點1

HostName=198.51.100.30 #節點IP

NodeId=2 #節點ID

DataDir=/usr/local/mysql/data #節點數據目錄

LockExecuteThreadToCPU=1

LockMaintThreadsToCPU=0

[ndbd] #數據節點節點2

HostName=198.51.100.40 #節點IP

NodeId=3

DataDir=/usr/local/mysql/data

LockExecuteThreadToCPU=1

LockMaintThreadsToCPU=0

[mysqld] #sql節點1

HostName=198.51.100.20

[mysqld]    #sql節點2

HostName=198.51.100.20

管理節點上進行初始化:

  ndb_mgmd -f /var/lib/mysql-cluster/config.ini #指定config.ini文件位置,配置文件位置

SQL節點與數據節點上執行:

    ndbd --ndbcluster

--ndbcluster(--initial):該NDBCLUSTER存儲引擎是必要的使用NDB簇

關閉集群,在管理節點上執行:

    ndb_mgm -e shutdown

mysql cluster配置