一、注意事项
数据节点和 sql节点是否能链接管理节点 注意端口号 telnet
关闭防火墙:Service iptables stop;
Sql 节点启动时注意权限
二、软件安装:
(一)管理节点MGM
配置管理节点
首先在合适的位置,创建一个管理节点的配置文件,步骤如下:
[root@localhost ~]# mkdir /var/lib/mysql-cluster
[root@localhost ~]# cd /var/lib/mysql-cluster
[root@localhost mysql-cluster]# vi config.ini
配置文件config.ini内容如下:
[ndbd default]
NoOfReplicas=1
DataMemory=80M
IndexMemory=18M
[ndb_mgmd]
hostname=192.168.2.253
datadir=/var/lib/mysql-cluster
[ndbd]
hostname=192.168.2.253
datadir=/usr/local/mysql/data
[mysqld]
hostname=192.168.2.254
安装管理节点,不需要mysqld二进制文件,只需要MySQL Cluster服务端程序(ndb_mgmd)和监听客户端程序(ndb_mgm)。这两个文件都在下载的MySQL-cluster文件解压后的bin文件夹中。执行如下步骤,在集群的管理节点上安装ndb_mgmd 和 ndb_mgm。
1、改变地址到/var/tmp目录下,解压MySQL-Cluster压缩文件,取出ndb_mgm和ndb_mgmd复制到/usr/local/bin 目录下。
[root@localhost ~]# cd /usr/local/
[root@localhost local]# tar –xzvf mysql-cluster-gpl-7.1.13-linux-i686-glibc23.tar.gz
[root@localhost local]# cd mysql-cluster-gpl-7.1.13-linux-i686-glibc23
[root@localhost mysql-cluster-gpl-7.1.13-linux-i686-glibc23]# cp bin/ndb_mgm* /usr/local/bin
2、改变路径为拷贝到的目录下,并确保这两个文件可执行。
[root@localhost tm local p]# cd /usr/local/bin
[root@localhost bin]# chmod +x ndb_mgm*
3、在/usr/local下创建mysql文件夹。
[root@localhost ~]# cd /usr/local
[root@localhost local]# mkdir mysql
(二)、数据节点NDBD和SQL节点
在每一个SQl点中的/etc目录下找到my.cnf文件,并做如下配置:
[client]
socket=/usr/local/mysql/sock/mysql.sock
[mysqld]
ndbcluster
datadir=/usr/local/mysql
socket=/usr/local/mysql/sock/mysql.sock
ndb-connectstring=192.168.56.88
[mysql_cluster]
ndb-connectstring=192.168.56.88
在每一个数据节点中的/etc目录下找到my.cnf文件,并做如下配置:
在每一个数据节点NDBD和SQL节点的机器上,用root用户执行下面的步骤。
1、检查/etc/passwd 和 /etc/group 文件,是否存在mysql组和mysql用户,如果没有,用下面的命令创建一个mysql组,并在改组中添加mysql用户。
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd –g mysql mysql
2、改变文件夹位置到mysql压缩包的存放位置,解压文件,准备安装,步骤如下:
[root@localhost ~]# cd /usr/local/
[root@localhost local]# tar –xzvf mysql-cluster-gpl-7.1.13-linux-i686-glibc23.tar.gz
3、改变位置到local文件夹,改变mysql解压后的文件夹名称为mysql,然后执行提供的脚本,创建系统数据库。
[root@localhost local]# mv mysql-cluster-gpl-7.1.13-linux-i686-glibc23/ mysql/
[root@localhost local]# cd mysql
[root@localhost mysql]# mkdir sock
[root@localhost mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql --socket=/usr/local/mysql/sock/mysql.sock
4、为MySQL服务及数据目录设置必要的服务。
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql.mysql /usr/local/mysql/data
[root@localhost mysql]# chown -R mysql.mysql /usr/local/mysql/sock
[root@localhost mysql]#chgrp -R mysql .
[root@localhost mysql]# ls -l
5、复制MySQL的启动脚本到如下的文件夹,确保可以执行。并设置为当系统启动时,同时启动MySQL。
[root@localhost mysql]# cp support-files/mysql.server /etc/rc.d/init.d/
[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysql.server
[root@localhost mysql]# chkconfig --add mysql.server
三、Cluster环境启动
注意启动顺序:首先是管理节点,然后是NDBD节点,最后是SQL节点。
1、[MGM]
[root@localhost ~]#ndb_mgmd -f /var/lib/mysql-cluster/config.ini
2、[NDBD]
首次启动,则需要添加--initial参数,以便进行NDB节点的初始化工作。在以后的启动过程中,则是不能添加该参数的,否则ndbd程序会清除在之前建立的所有用于恢复的数据文件和日志文件。
[root@localhost ~]#/usr/local/mysql/bin/ndbd --initial
如果不是首次启动,则执行下面的命令。
[root@localhost ~]# /usr/local/mysql/bin/ndbd
3、[SQLD]
/usr/local/mysql/bin/mysqld_safe --user=mysql &
有可能出现上图问题,是系统数据库创建问题,只需再次创建系统数据库,方法如下:
[root@localhost mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql
再次启动
/usr/local/mysql/bin/mysqld_safe --user=mysql &
查看管理节点,启动成功:
/etc/rc.d/init.d/mysqld stop
/etc/rc.d/init.d/mysqld start