刚刚看到有人在群里问关于MySQL集群的安装方法,有人在下面回复说:“上次搭建用了六天”,我把步骤总结了一下,希望可以快一些 Mysql Cluster版本:mysql-cluster-gpl-7.4.6-linux-glibc2.5-x6_64.tar.gz
管理节点服务器1台 Sql服务器2台 Ndb服务器2台
首先修改所有服务器的hostname Vi /etc/hosts
将节点服务器名配置为:MGM1 将Sql服务器配置为:SQL1,SQL2 将NDB服务器配置为:NDB1,NDB2
一、Sql节点以及Ndb节点安装步骤: 1.首先在节点服务器上安装Centos6.5,不要安装内置Mysql 2.从官方网站上下载Mysql Cluster,这里使用到的版本为Mysql Cluster7.4.6 3.创建用户群,groupadd mysql 4.创建用户,useradd -g mysql mysql 5.解压缩Mysql Cluster包,输入tar -zxvf mysql-cluster-gpl-7.4.6-linux-glibc2.5-x6_64.tar.gz 6.将解压缩后的包移入/usr/local内,输入cp mysql-cluster-gpl-7.4.6-linux-glibc2.5-x6_64 /usr/local/mysql 7.进入mysql文件夹,输入cd /usr/local/mysql 8.输入chown -R root * 9.输入chown -R mysql data 10.输入chgrp -R mysql * 11.安装mysql-cluster,输入scripts/mysql_install_db --user=mysql 12.注册mysql的service,输入cp support-files/mysql.server /etc/rc.d/init.d/mysqld 13.chmod +x /etc/rc.d/init.d/mysqld 14.chkconfig --add mysqld 15.运行service mysqld start启动mysql
二、管理节点安装步骤: 1.在管理节点服务器完成上述sql节点和ndb节点安装步骤后,输入cd /usr/local/mysql进入目录 2.cp bin/ndb_mgm*/usr/local/bin 3.cd /usr/local/bin 4.chmod +x ndb_mgm*
三、配置sql节点和ndb节点 mysql服务启动时会默认加载/etc/my.cnf作为其配置文件,要将一个mysql服务器配置成一个数据节点和SQL节点也非常的简单,这是配置前的my.cnf的内容: 1.[client] port=3306 socket=/tmp/mysql.sock [mysqld] basedir=/usr/local/mysql/ datadir=/usr/local/mysql/data user= mysql log-error=/var/lib/mysql/mysqld.err 2.在此基础上在最下方分别加入以下语句: a) 如果是NDB服务器的情况下输入: ndbcluster ndb-connectstring=MGM1 b) 如果是SQL节点服务器的情况下输入 [mysql_cluster] ndb-connectstring=MGM1 注意所有服务器必须具有相同的配置 四、管理节点服务器的配置 1.cd /var/lib 2.mkdir mysql-cluster 3.vi config.ini,创建配置文件 4.在config.ini文件中添加以下内容: [NDBD DEFAULT] NoOfReplicas=1 #每个数据节点的镜像数量 DataMemory=500M #每个数据节点中给数据分配的内存 IndexMemory=300M #每个数据节点中给索引分配的内存 [TCP DEFAULT] portnumber=2202 #数据节点的默认连接端口 [NDB_MGMD] #配置管理节点 hostname=MGM1 datadir=/var/lib/mysql-cluster/ #管理节点数据(日志)目录 [NDBD] #数据节点配置 hostname=NDB1 datadir=/usr/local/mysql/data/ #数据节点目录 [NDBD] hostname=NDB2 datadir=/usr/local/mysql/data/ [MYSQLD] #SQL节点目录 hostname=SQL1 [MYSQLD] hostname=SQL2
注释: [NDBD DEFAULT]:表示每个数据节点的默认配置在每个节点的[NDBD]中不用再写这些选项,只能有一个。 [NDB_MGMD]:表示管理节点的配置,只有一个。 [NDBD]:表示每个数据节点的配置,可以有多个。 [MYSQLD]:表示SQL节点的配置,可以有多个,分别写上不同SQL节点的IP地址,也可以什么都不写,只保留一个空节点,表示任意一个IP地址都可以进行访问,此节点的个数表明了可以用来连接数据节点的SQL节点总数。
五、启动 1.管理节点的启动: a) Mysql cluster需要各个节点进行启动后方能够工作,节点的启动顺序为:管理节点——》NDB数据节点——》Sql节点。因此首先启管理节点 b) cd /usr/local/bin c) ndb_mgmd -f /var/lib/mysql-cluster/config.ini d) 注意以上为第一次配置的情况下,如果新增节点,使用./ ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial进行加载,不然添加的节点不会出现在集群中 e) 启动时可能会报个WARNING,如WARNING -- at line 7: [TCP] portnumber is deprecated,这个不用管。可以正常工作的。 f) 启动后可以使用ndb_mgm -e show查看运行状态 2.NDB节点的启动 a) cd /usr/local/bin b) ./ndbd --initial c) 如果出现类似以下信息则表明成功连接到管理节点服务器: 2015-06-25 12:48:03 [ndbd] INFO -- Angel connected to 'MGM1:1186' 2015-06-25 12:48:03 [ndbd] INFO -- Angel allocated nodeid: 3 3.SQL节点的启动: a) service mysqld start 4.客户端管理 a) 在管理服务器中输入cd /usr/local/bin/ b) ./ndb_mgm c) 在ndb_mgm> 提示符下输入show:
ndb_mgm> show
ClusterConfiguration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 @NDB1 (mysql-5.6.24 ndb-7.4.6,Nodegroup:0,Master)
id=3 @NDB2 (mysql-5.6.24 ndb-7.4.6,Nodegroup:1)
[ndb_mgmd(MGM)]1 node(s)
id=1 @MGM1 (mysql-5.6.24 ndb-7.4.6)
[mysqld(API)] 2 node(s)
id=4 @SQL1 (mysql-5.6.24 ndb-7.4.6)
id=5 @SQL2 (mysql-5.6.24 ndb-7.4.6) 5.关闭mysql cluster a) cd /usr/local/bin b) ./ndb_mgm -e shutdown c) 虽然mysql cluster 关闭了,但是SQL节点的mysql服务并不会停止的。接下来就可以做各种试验了。
|