标签:搭建mysql集群
一、搭建mysql集群
集群/群集:一组服务器提供相同的服务
***以下方面只适用于ndbcluster存储引擎,其它类型请绕行!!!!!***
1.mysql集群中服务器的角色
数据节点 (ndbd):存储表里的数据
SQL节点(sql):用户访问数据的接口、执行sql语句,不存储数据
管理节点(mgmd):管理集群中的所有主机
客户端 (client):访问数据
大致拓扑图:
client(172.30.13.X)
mgm 193
sql sql ndbd ndbd
191 192 8 9
2.流程思路:
(1).在所有主机上安装提供机MySQL集群服务的软件包
(2).给每种角色的主机编写对应的配置文件 config.ini my.cnf
3、在所有服务器上卸载mysql数据库服务软件,这里需要安装一个专用的mysql软件,主要目的是为了避免软件冲突
service mysql stop
rpm -qa | grep -i mysql
rpm -e --nodeps MySQL-server MySQL-shared MySQL-shared-compat MySQL-embedded
MySQL-client MySQL-devel MySQL-test
rm -rf /etc/my.cnf
ls /var/lib/mysql/
rm /var/lib/mysql/*
4、在所有服务器上安装提供集群服务的软件包
MySQL-Cluster-gpl-7.3.3-1.el6.x86_64.rpm-bundle.tar
ndbd进程 (ndbd节点) mysql服务(sql节点) mgmd进程(管理节点)
tar -xvf MySQL-Cluster-gpl-7.3.3-1.el6.x86_64.rpm-bundle.tar
rpm -Uvh MySQL-Cluster-*.rpm
rpm -qa | grep -i "mysql-cluster"
5、配置管理节点 ( 193 )
管理集群中的所有主机,运行管理进程,这里需要在管理节点服务器新建一个config.ini文件,里面定义了设置主机的角色和运行参数;
(启动管理进程时加载自己的配置config.ini)
[ndbd default] 数据节点公共配置
[ndb_mgmd] 设置管理主机
[ndbd] 指定数据节点主机
[mysqld] 指定sql节点
vim /etc/config.ini
[ndbd default]
NoOfReplicas=2 //数据节点服务器个数
DataMemory=80M //数据缓存
IndexMemory=18M
[ndb_mgmd]
nodeid=1 //管理节点编号,范围1-50
hostname=172.30.13.193
datadir=/var/log/mysql-cluster //管理信息存放目录
[ndbd]
nodeid=8
hostname=172.30.13.8
datadir=/var/log/mysql-cluster/data //在数据节点上创建
[ndbd]
nodeid=9
hostname=172.30.13.9
datadir=/var/log/mysql-cluster/data
[mysqld]
nodeid=20
hostname=172.30.13. 191
[mysqld]
nodeid=30
hostname=172.30.13.192
mkdir -p /var/log/mysql-cluster
6、配置数据节点(8 、9)
(运行ndbd进程 /etc/my.cnf)
mkdir -p /var/log/mysql-cluster/data
vim /etc/my.cnf
[mysqld]
datadir=/var/log/mysql-cluster/data
ndb-connectstring=172.30.13.193 //管理主机ip
ndbcluster //存储引擎
[mysql_cluster]
ndb-connectstring=172.30.13.193 //谁来管理集群
7、配置 sql 节点 (191、192)
(运行数据库服务 /etc/my.cnf)
vim /etc/my.cnf
[mysqld]
ndbcluster
ndb-connectstring=172.30.13.193 //指定管理主机
default-storage-engine=ndbcluster
[mysql_cluster]
ndb-connectstring=172.30.13.193
8、启动每种角色主机上对应的进程
(1 启动管理主机上的管理进程
ndb_mgmd -f /etc/config.ini
netstat -utnlap | grep :1186
ndb_mgm 登陆管理界面ndbcluster
(2 启动数据节点上的数据进程
[root@svr5 data]# ndbd
2014-11-11 22:38:55 [ndbd] INFO -- Angel connected to ‘172.30.13.193:1186‘
2014-11-11 22:38:55 [ndbd] INFO -- Angel allocated nodeid: 8
(3 、启动sql 节点上的MySQL服务
service mysql start
(4、在sql节点上设置授权,在其它客户端验证
cat /root/.mysql_secret
mysql -uroot -pxxxxx
mysql>grant all on *.* to jim@"%" identified by "123";
9、在管理节点上查看所有主机的状态
ndb_mgm
show
(如果出现如下内容,则实验成功)
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=28 @192.168.5.28 (mysql-5.6.14 ndb-7.3.3, Nodegroup: 0, *)
id=29 @192.168.5.29 (mysql-5.6.14 ndb-7.3.3, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.5.25 (mysql-5.6.14 ndb-7.3.3)
[mysqld(API)] 2 node(s)
id=26 @192.168.5.26 (mysql-5.6.14 ndb-7.3.3)
id=27 @192.168.5.27 (mysql-5.6.14 ndb-7.3.3)
本文出自 “刘福” 博客,请务必保留此出处http://liufu1103.blog.51cto.com/9120722/1656836
标签:搭建mysql集群
原文地址:http://liufu1103.blog.51cto.com/9120722/1656836