Welcome 微信登录

首页 / 数据库 / MySQL / CentOS 6.3上MySQL Cluster 7.x 集群部署配置

本文主要介绍在CentOS 6.3系统上搭建MySQL Cluster 7.2.10集群的方法。

1. MySQL cluster简介

MySQL cluster主要有三种类型节点:Data node,数据节点将保存数据库,它会自动复制所有的数据节点;Daemon node,守护节点相当于是SQL数据库和客户端之间的接口,它提供从数据节点查询等操作,类似于"网关";Management node,管理节点,用以监控和管理整个集群。

2. 部署配置方法

本文介绍使用2台服务器(100与101)部署最简单的集群方法:其中100上部署Data node,Daemon node及Management node;101上部署Data node,Daemon node。(2.1-2.3为所有节点均需执行的步骤,2.4和2.5为相关节点需执行的步骤)

2.1下载MySQL cluster最新版本7.2.10,解压移动至 /usr/local/mysql目录下

wget http://mysql.mirror.kangaroot.net/Downloads/MySQL-Cluster-7.2/mysql-cluster-gpl-7.2.10-linux2.6-x86_64.tar.gztar -zxv -f mysql-cluster-gpl-7.2.10-linux2.6-x86_64.tar.gzmv mysql-cluster-gpl-7.2.10-linux2.6-x86_64 /usr/local/mysql

2.2 添加mysql用户组及用户,修改相关目录权限

groupadd mysqluseradd mysql -g mysqlcd /usr/localchown -R mysql:mysql mysql

2.3 安装MySQL cluster

cd mysqlscripts/mysql_install_db --user=mysql

2.4 配置管理节点

#创建目录mkdir -p /var/lib/mysql-cluster#修改配置文件vim /var/lib/mysql-cluster/config.ini#config.ini内容如下[ndbd default]#NoOfReplicas表示数据份数,如果为1,会有数据节点单点故障NoOfReplicas=2DataMemory=200MIndexMemory=30M[ndb_mgmd]id=1hostname=192.168.85.100datadir=/var/lib/mysql-cluster/[ndbd]id=2hostname=192.168.85.101datadir=/usr/local/mysql/data[ndbd]id=3hostname=192.168.85.100datadir=/usr/local/mysql/data[mysqld]id=4hostname=192.168.85.100[mysqld]id=5hostname=192.168.85.101[mysqld]id=6

2.5 配置数据节点和守护节点

#拷贝文件,创建相关目录cp support-files/mysql.server /etc/init.d/mysqldmkdir -p /var/mysql/datamkdir -p /var/mysql/logs# 修改配置文件vim /etc/my.cnf#my.cnf内容如下:[mysqld]ndbclusterdatadir=/usr/local/mysql/databasedir=/usr/local/mysqlsocket=/tmp/mysql.sockport=3307ndb-connectstring=192.168.85.100[mysql_cluster]ndb-connectstring=192.168.85.100

2.6 启动节点

启动需要按照如下顺序进行:Management Node > Data Node > SQL Node

2.6.1 管理结点启动

/usr/local/mysql/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini其他操作:# 查看是否有端口号为1186的监听端口netstat -lntpu# 查看集群状态/usr/local/mysql/bin/ndb_mgm -e show# 管理节点检验/usr/local/mysql/bin/ndb_mgm# 管理节点关闭/usr/local/mysql/bin/ndb_mgm -e shutdown

2.6.2 数据节点启动

# 只是在第一次启动或在备份/恢复或配置变化后重启ndbd时,才加–initial参数!/usr/local/mysql/bin/ndbd --initial# 正常启动方式/usr/local/mysql/bin/ndbd

2.6.3 SQL节点启动

service mysqld start# sql 节点关闭service mysql stop# 检验mysql是否运行/etc/rc.d/init.d/mysqld status# 为sql指定密码/usr/local/mysql/bin/mysqladmin -u root password "new-password"/usr/local/mysql/bin/mysqladmin -u root -h "host" password "new-password"# 启动命令行窗口/usr/local/mysql/bin/mysql -u root –p

3. 验证MySQL cluster功能

下面在服务器上A上新建表并插入数据,在服务器B上验证MySQL cluster是否将数据同步。

3.1 在服务器A上执行如下语句

#进入sql监视器,注意后续的命令均已;或g结尾/usr/local/mysql/bin/mysql#查看数据库Show databases;#使用test库Use test;#查看test库,显示为空Show test;#创建person表create table person(id int,name varchar(40),birthday date)ENGINE=ndb;#插入数据Insert into person values(1,"Kate",19821212);#查看表中数据Select * from test.person;

3.2 在服务器B上执行如下语句

#进入sql监视器/usr/local/mysql/bin/mysql#查看表中数据,可以看到数据已经同步Select * from test.person;同样也可在服务器B上执行Insert/Update/Delete等操作,然后在服务器A上验证数据是否同步。Ubuntu下MySQL Cluster安装和配置  http://www.linuxidc.com/Linux/2016-04/130100.htmMySQL集群之MySQL Cluster  http://www.linuxidc.com/Linux/2016-04/130099.htmMySQL Cluster 备份与恢复 http://www.linuxidc.com/Linux/2013-06/85295.htmMySQL Cluster安装配置 http://www.linuxidc.com/Linux/2013-07/87705.htmMySQL Cluster 3台机器搭建集群环境 DOC http://www.linuxidc.com/Linux/2013-01/78249.htmMySQL Cluster7.2在线增加数据节点存在重大弊端 http://www.linuxidc.com/Linux/2012-08/67605.htmMySQL Cluster 的详细介绍:请点这里
MySQL Cluster 的下载地址:请点这里本文永久更新链接地址