MySQL分布式集群搭建
1准备集群搭建环境
使用6台虚拟机来搭建MYSQL集群,相应的实验环境与对应的 MYSQL节 点之间的对应关系如下图所示:
节点名称 Ubun tu-1 Ubun tu-2 Ubun tu-3 Ubun tu-4 Ubun tu-5 Ubun tu-6
节点IP 192.168.1.26 192.168.1.27 192.168.1.28 192.168.1.29 192.168.1.31 192.168.1.32
节点内存 768M 768M 768M 768M 768M 768M
节点硬盘大小 20G 10G 10G 10G 10G 10G
节
3(
3(
3(
3(
3(
3(
管理节点(MGM ):这类节点的作用是管理 MySQLCIuster内的其他节点, 如提供配置数据,并停止节点,运行备份等。由于这类节点负责管理其他节点的 配置,应该在启动其他节点之前启动这类节点。 MGM节点是用命令“ ndb_mg md ”启动的;
数据节点(NDB ):这类节点用于保存 Cluster的数据,数据节点的数目与 副本的数目相关,是片段的倍数。例如,对于两个副本,每个副本有两个片段, 那么就有4个数据节点,没有必要设定过多的副本,在 NDB中数据会尽量的保 存在内存中。数据节点使用命令“ ndb ”启动的; SQL节点:这是用来访问Cluster数据的节点,对于 MySQL Cluster,客户 端节点
是使用NDB Cluster存储引擎的传统MySQL服务器。通常,SQL节点
2 准备安装包
使用命令“ mysqld-ndbcluster ”启动的;
在官网上下载 mysql 的安装包 : mysql-cluster-gpl-7.4.11-linux-glibc2.5-x 86_64.tar.gz ,并进行解压。
3 集群搭建流程
1 将上述安装包解压出来的文件都移到 /usr/local/mysql 下;
2 运行 script 目录下的 mysql-install-db.sh 脚本,运行命令为 ./mysql-ins tall-db.sh --user=root--basedir
=/usr/local/mysql --datadir=/usr/local
/mysql ;注意其中用户为 root 的名称需要跟配置文件 my.cnf 中的相同;
在管理节点,数据节点, SQL 节点上都执行上述安装命令,从而完成对 mys ql 的安装;
4 集群配置与启动
1 在管理节点上需要完成对于集群整体的配置配置:在 /var/lib/mysql-clust er/config.ini 中实现如下的配置信息:
[ndbd default] NuOfQeplica&=l DataMemory = 8GM IndexMe(nory= 13M [ridb_ngflidj NodeTd-1 hustnane = I92 ?16S * 1 datadir^/'var/lib/pys ql 'ciuster/dots Endbd! Nodeld^ hMt2ni\氛 W2? datadir*/var/l ib/ftysql'duster/dati (ndbd] ^dsflWD://blpg. rsdn. n(?t/bonzrh h&stna^~192.166flT2f datadir-/var/lib/fflysql-clust*r/data - [ndbd) Nodeld^4 hostname-192 ”】百咅.1.29 datadira/var/1 ib/nysql' clus ter/dat-a [■ysald) Nodeld=5 ho5tname=19J.168 丄31 [?ysqld] Nodeld^ 5 h^s tn^fn^ = 19S 168 1 + 32 2在数据节点中需要在 my.cnf中完成对于数据节点的相关配置信息,如下:
[mysqld] basedir=/us r/local/mysql datadir=/us r/local/mysql/d^t^ /usr/local/mysql/sock/my5ql.sock user=root so匚ket-symbolic-links-0 http://bio每 csdn. nct/bcnzyh [mysqld_safe] log^error~/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld4pid Ifnysql__clus ter ] ndb-connectstring=192.168.1.26 需要指明配置的数据节点的根目录, 数据目录,socket连接配置,用户配置, 以及对应的管理节点的ip地址配置;将配置完成的配置文件移动到/etc/my.cn f,完成;
MySQL分布式集群搭建
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)