共计 3266 个字符,预计需要花费 9 分钟才能阅读完成。
本文主要介绍在 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.gz
tar -zxv -f mysql-cluster-gpl-7.2.10-linux2.6-x86_64.tar.gz
mv mysql-cluster-gpl-7.2.10-linux2.6-x86_64 /usr/local/mysql
2.2 添加 mysql 用户组及用户,修改相关目录权限
groupadd mysql
useradd mysql -g mysql
cd /usr/local
chown -R mysql:mysql mysql
2.3 安装 MySQL cluster
cd mysql
scripts/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=2
DataMemory=200M
IndexMemory=30M
[ndb_mgmd]
id=1
hostname=192.168.85.100
datadir=/var/lib/mysql-cluster/
[ndbd]
id=2
hostname=192.168.85.101
datadir=/usr/local/mysql/data
[ndbd]
id=3
hostname=192.168.85.100
datadir=/usr/local/mysql/data
[mysqld]
id=4
hostname=192.168.85.100
[mysqld]
id=5
hostname=192.168.85.101
[mysqld]
id=6
2.5 配置数据节点和守护节点
# 拷贝文件,创建相关目录
cp support-files/mysql.server /etc/init.d/mysqld
mkdir -p /var/mysql/data
mkdir -p /var/mysql/logs
# 修改配置文件
vim /etc/my.cnf
#my.cnf 内容如下:
[mysqld]
ndbcluster
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
port=3307
ndb-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.htm
MySQL 集群之 MySQL Cluster http://www.linuxidc.com/Linux/2016-04/130099.htm
MySQL Cluster 备份与恢复 http://www.linuxidc.com/Linux/2013-06/85295.htm
MySQL Cluster 安装配置 http://www.linuxidc.com/Linux/2013-07/87705.htm
MySQL Cluster 3 台机器搭建集群环境 DOC http://www.linuxidc.com/Linux/2013-01/78249.htm
MySQL Cluster7.2 在线增加数据节点存在重大弊端 http://www.linuxidc.com/Linux/2012-08/67605.htm
MySQL Cluster 的详细介绍:请点这里
MySQL Cluster 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-08/134598.htm