mysql engine ndb_MySQL NDB Cluster Installation Guide

NDB管理节点安装软件包

[root@mydb02 ~]# yum -y install mysql-cluster-commercial-management-server

NDB SQL节点安装软件包

[root@mydb03 ~]# yum -y install mysql-cluster-commercial-server mysql-cluster-commercial-common mysql-cluster-commercial-client

NDB 数据节点安装软件包

[root@mydb04 ~]# yum -y install mysql-cluster-commercial-data-node mysql-cluster-commercial-client

[root@mydb05 ~]# yum -y install mysql-cluster-commercial-data-node mysql-cluster-commercial-client

2、NDB Cluster服务配置

NDB管理节点配置

//创建配置文件

[root@mydb02 ~]# mkdir /var/lib/mysql-cluster

[root@mydb02 ~]# vi /var/lib/mysql-cluster/config.ini

[tcp default]

SendBufferMemory=2M

ReceiveBufferMemory=2M

[NDBD DEFAULT]

#设置冗余的分数

NoOfReplicas=2

#指定存放数据的内存段大小

DataMemory=1024M

#存放跟踪文件、日志文件、pid文件以及错误日志的目录

DataDir=/var/lib/mysql-cluster

ServerPort=2202

#数据库中存储NDB表的最大数量

MaxNoOfTables=8192

#设置哈希索引在系统中同意时间被使用的总数,该参数的默认值为128。

MaxNoOfOrderedIndexes=2048

#定义了可在簇中定义的属性数目

MaxNoOfAttributes=5000000

#开启这个设置会使内地版NDB尝试采用O_DIRECT写LCP、备份、重做日志,通常使用更少的内存和cpu。

ODirect=1

#每个redo日志文件的大小

FragmentLogFileSize=100M

#系统中可以定义的最大数量的触发器

MaxNoOfTriggers=1000

[NDB_MGMD]

NodeId=1

HostName=192.168.120.93

DataDir=/var/lib/mysql-cluster

TotalSendBufferMemory=2048M

[NDBD]

TotalSendBufferMemory=2048M

NodeId=2

HostName=192.168.120.130

DataDir=/var/lib/mysql

[NDBD]

TotalSendBufferMemory=2048M

NodeId=3

HostName=192.168.120.131

DataDir=/var/lib/mysql

[MYSQLD]

NodeId=4

TotalSendBufferMemory=2048M

HostName=192.168.120.129

初始化NDB管理节点,执行一次,后续启动不需要加--initial参数。

[root@mydb02 ~]# ndb_mgmd -f /var/lib/mysql-cluster/config.ini –initial

通过ndb客户端查看,除了管理节点已连接外,其他尚未和管理节点建立连接,如下图:

e4242c2f63871c1ffec3515cbd7b3c95.png

NDB数据节点配置

//数据节点1创建my.cnf文件

[root@mydb04 ~]# vi /etc/my.cnf

[mysqld]

ndbcluster

ndb-connectstring = 192.168.120.93

[mysql_cluster]

ndb-connectstring = 192.168.120.93

//数据节点1初始化

[root@mydb04 ~]# ndbd --initial

//数据节点2创建my.cnf文件

[root@mydb05 ~]# vi /etc/my.cnf

[mysqld]

ndbcluster

ndb-connectstring = 192.168.120.93

[mysql_cluster]

ndb-connectstring = 192.168.120.93

//数据节点2初始化

[root@mydb05 ~]# ndbd –initial

在管理节点通过ndb客户端可以验证数据节点已建立连接,如下图:

5373972b74066d645d14ed233f049688.png

NDB SQL节点配置

//创建配置文件

[root@mydb03 ~]# vi /etc/my.cnf

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

symbolic-links=0

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

ndbcluster

default-storage-engine=ndbcluster

tmp_table_size = 512M

max_heap_table_size = 102400M

max_allowed_packet = 3072M

log_timestamps=system

collation-server=utf8_general_ci

character-set-server = utf8

[mysql_cluster]

ndb-connectstring=192.168.120.93

//启动MySQL服务

[root@mydb03 ~]# systemctl start mysqld

验证SQL节点是否和管理节点建立连接,如下图:

101c7da3a0fdaa5d7732b4fcbdf0e25c.png

到此,整个ndb cluster服务搭建完成,最后通过SQL节点创建表以及导入数据即可。另外,只有使用了NDBCluster引擎的表才会执行同步操作,如果创建表时未指定engine类型为ndbcluster,则系统不会同步。使用如下命令在SQL节点更改表类型为ndbcluster:

mysql> alter table xj.chapter engine=ndbcluster;

3、NDB Cluster服务管理

创建Cluster的时候,已做过初始化操作,后续的启动过程不需要加--initial参数。启动的顺序是先启动ndb管理服务,再启动ndb数据节点服务,最后是SQL节点服务。

启动NDB Cluster服务

[root@mydb02 ~]# ndb_mgmd -f /var/lib/mysql-cluster/config.ini

[root@mydb04 ~]# ndbd

[root@mydb05 ~]# ndbd

[root@mydb03 ~]# systemctl start mysqld

关闭NDB Cluster服务

//通过NDB客户端执行shutdown可关闭cluster里的所有服务除SQL节点服务

[root@mydb02 ~]# ndb_mgm

ndb_mgm>shutdown

[root@mydb03 ~]# systemctl stop mysqld

4、监控NDB Cluster服务

这里使用MySQL Enterprise Monitor工具,这个工具的安装请参考我博客里相关内容。待MySQL Enterprise Monitor agent服务启动后,它会收集操作系统以及MySQL信息发送到服务端,最终从web界面获取相关信息,如下图:

88e54e6623e082a3fabc9f04859246ae.png

a5691203f8c7c1d560ff9d9e67aff2a5.png

9f60f2ad7c283c25c0c0ee89baecf85c.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值