此次NDB Cluster使用三台虚拟机进行搭建,一台作为管理节点;而对于另外两台服务器,每一台都充当着数据节点和SQL节点的角色。注意不是MGR主从复制架构,而是分布式MySQL架构。
创建 /var/lib/mysql-cluster/config.ini Cluster全局配置文件
[NDBD DEFAULT]
NoOfReplicas =2
DataMemory = 512M
MaxNoOfExecutionThreads = 4
[NDB_MGMD]
NodeId=1
hostname =192.168.182.102
datadir =/var/lib/mysql-cluster
[NDBD]
NodeId =2
hostname =192.168.182.103
datadir =/usr/local/mysql-cluster/data
[NDBD]
NodeId =3
hostname =192.168.182.104
datadir =/usr/local/mysql-cluster/data
[mysqld]
NodeId =4
hostname =192.168.182.103
[mysqld]
NodeId =5
hostname =192.168.182.104
在管理节点中执行以下命令,初始化管理节点(注意mysql cluster路径是固定的,否则会报错)
/usr/local/mysql/mysql-cluster/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial --ndb-nodeid=1
创建 /etc/my.cnf mysql配置文件
[mysqld]
basedir=/usr/local/mysql-cluster
datadir=/usr/local/mysql-cluster/data
socket=/usr/local/mysql-cluster/sock/mysql.sock
user=hadoop
symbolic-links=0
ndbcluster
ndb-connectstring=192.168.182.102
port=3306
[mysql_cluster]
ndb-connectstring=192.168.182.102
[ndbd]
ndb-connectstring=192.168.182.102
[mysqld_safe]
log-error=/usr/local/mysql-cluster/logs/mysql.pid
pid-file=/usr/local/mysql-cluster/logs/error.log
[mysql]
socket=/usr/local/mysql-cluster/sock/mysql.sock
#
## include all files from the config directory
##
#!includedir /etc/my.cnf.d
在初始化mysqld之前,需要将data、logs、sock文件夹创建完毕,否则无法初始化
[hadoop@hadoop103 mysql-cluster]$ pwd
/usr/local/mysql-cluster
[hadoop@hadoop103 mysql-cluster]$ ls
bin docs include lib LICENSE man README share support-files
[hadoop@hadoop103 mysql-cluster]$ mkdir data
[hadoop@hadoop103 mysql-cluster]$ mkdir sock
[hadoop@hadoop103 mysql-cluster]$ mkdir logs

本文详细描述了如何在三台虚拟机上搭建NDBCluster,配置管理节点、数据节点和SQL节点,包括创建配置文件、初始化数据库和设置远程连接权限,以及提供自定义的启动、关闭和重启脚本示例。
最低0.47元/天 解锁文章
1647





