MySQL cluster 7.2集群部署配置
2014-03-20 09:14
459 查看
http://my.oschina.net/HankCN/blog/179866
本文主要介绍在CentOS 6.3系统上搭建MySQL
cluster 7.2.10集群的方法。
(另附:MySQL
Cluster(MySQL集群)配置生成器(MySQL实验室提供)
http://www.mysqlab.net/tool/mysql-cluster/config.generator/computers/2/cpus/1/memory/1/replica/2)
Data node,数据节点将保存数据库,它会自动复制所有的数据节点;
Daemon node,守护节点相当于是SQL数据库和客户端之间的接口,它提供从数据节点查询等操作,类似于"网关";
Management node,管理节点,用以监控和管理整个集群。
node;101上部署Data node,Daemon node。
(2.1-2.3为所有节点均需执行的步骤,2.4和2.5为相关节点需执行的步骤)
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
useradd mysql -g mysql
cd /usr/local
chown -R mysql:mysql mysql
scripts/mysql_install_db --user=mysql
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
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
其他操作:
# 查看是否有端口号为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
/usr/local/mysql/bin/ndbd --initial
# 正常启动方式
/usr/local/mysql/bin/ndbd
# 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
/usr/local/mysql/bin/mysql
![](http://static.oschina.net/uploads/img/201311/28165621_bBb3.png)
#查看数据库
Show databases;
![](http://static.oschina.net/uploads/img/201311/28165621_RHdh.png)
#使用test库
Use test;
![](http://static.oschina.net/uploads/img/201311/28165621_t3C8.png)
#查看test库,显示为空
Show test;
![](http://static.oschina.net/uploads/img/201311/28165621_EV4L.png)
#创建person表
create table person(id int,name varchar(40),birthday date)ENGINE=ndb;
![](http://static.oschina.net/uploads/img/201311/28165621_a0W6.png)
#插入数据
Insert into person values(1,'Kate',19821212);
![](http://static.oschina.net/uploads/img/201311/28165621_c9c1.png)
#查看表中数据
Select * from test.person;
![](http://static.oschina.net/uploads/img/201311/28165622_Ik4h.png)
/usr/local/mysql/bin/mysql
#查看表中数据,可以看到数据已经同步
Select * from test.person;
![](http://static.oschina.net/uploads/img/201311/28165622_hdnk.png)
同样也可在服务器B上执行Insert/Update/Delete等操作,然后在服务器A上验证数据是否同步。
本文主要介绍在CentOS 6.3系统上搭建MySQL
cluster 7.2.10集群的方法。
(另附:MySQL
Cluster(MySQL集群)配置生成器(MySQL实验室提供)
http://www.mysqlab.net/tool/mysql-cluster/config.generator/computers/2/cpus/1/memory/1/replica/2)
1. MySQL cluster简介
MySQL cluster主要有三种类型节点:Data node,数据节点将保存数据库,它会自动复制所有的数据节点;
Daemon node,守护节点相当于是SQL数据库和客户端之间的接口,它提供从数据节点查询等操作,类似于"网关";
Management node,管理节点,用以监控和管理整个集群。
2. 部署配置方法
本文介绍使用2台服务器(100与101)部署最简单的集群方法:其中100上部署Data node,Daemon node及Managementnode;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.gz
mv mysql-cluster-gpl-7.2.10-linux2.6-x86_64 /usr/local/mysql
2.2 添加mysql用户组及用户,修改相关目录权限
groupadd mysqluseradd mysql -g mysql
cd /usr/local
chown -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=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 Node2.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
![](http://static.oschina.net/uploads/img/201311/28165621_bBb3.png)
#查看数据库
Show databases;
![](http://static.oschina.net/uploads/img/201311/28165621_RHdh.png)
#使用test库
Use test;
![](http://static.oschina.net/uploads/img/201311/28165621_t3C8.png)
#查看test库,显示为空
Show test;
![](http://static.oschina.net/uploads/img/201311/28165621_EV4L.png)
#创建person表
create table person(id int,name varchar(40),birthday date)ENGINE=ndb;
![](http://static.oschina.net/uploads/img/201311/28165621_a0W6.png)
#插入数据
Insert into person values(1,'Kate',19821212);
![](http://static.oschina.net/uploads/img/201311/28165621_c9c1.png)
#查看表中数据
Select * from test.person;
![](http://static.oschina.net/uploads/img/201311/28165622_Ik4h.png)
3.2 在服务器B上执行如下语句
#进入sql监视器/usr/local/mysql/bin/mysql
#查看表中数据,可以看到数据已经同步
Select * from test.person;
![](http://static.oschina.net/uploads/img/201311/28165622_hdnk.png)
同样也可在服务器B上执行Insert/Update/Delete等操作,然后在服务器A上验证数据是否同步。
相关文章推荐
- MySQL cluster 7.2集群部署配置
- MySQL cluster 7.2集群部署配置
- MySQL cluster 7.2集群部署配置
- MySQL cluster 7.X集群部署配置
- MySQL Cluster集群部署与配置
- Mysql cluster (集群)7.2在Linux下的安装配置
- MySQL Cluster 7.2 集群的部署
- storm环境部署篇2 - 集群配置
- cas 集群部署配置
- Zookeeper集群部署与配置(三)
- RocketMQ集群部署配置
- 配置阿里云CentOS7.2+nginx+uwsgi 部署flask项目
- 理解 OpenStack + Ceph (1):Ceph + OpenStack 集群部署和配置(转)
- Elasticsearch-ES 5.x (Head,Kibana,X-Pack) 集群的部署、配置、测试
- centos7.2(三台腾讯云服务器)配置zookeeper集群
- Linux下mysql集群(mysql cluster)安装配置手记
- MySQL NDB集群安装配置(mysql cluster 9.4.13 installation)
- kafka集群部署与配置手册
- Centos_7.2 下 Kafka_2.13 分布式消息系统的集群模式配置图文详解
- RabbitMQ集群、镜像部署配置