搭建步骤
1、在g-cloud6.5.0添加centos6虚拟机 2、在g-cloud6.5.0添加网络规划
3、修改/etc/sysconfig/network-scripts/ifcfg.eth0将onboot修改为yes,将hctp修改为none,重启网卡 service network restart
4、挂载VmAgent iso文件,安装该软件,ps -ef|grep VmAgent查看该进程是否启动 4、在g-cloud6.5.0手动设置虚拟机的ip
5、下载mysql cluest 对应centos6系列的安装包 6、挂载centos系统iso盘
7、mount iso盘,修改yum配置,新建源为系统盘 mount /dev/cdrom /home/jensen cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak vi dvd.repo 加入以下内容 [dvd]
name=yum server
baseurl=file:///home/jensen enabled=1 gpgcheck=0
8、安装make、gcc、perl、libaio-devel
yum -y install make gcc gcc-c++ perl perl-devel libaio-devel 9、修改/etc/hosts文件中,添加计算机名 hostname vi /etc/hosts
填写该hostname,与IP绑定 10、上传mysql cluest 文件
cd /home && tar -zxvf mysql-cluster-gpl-7.4.8-linux-glibc2.5-x86_64.tar.gz && mv mysql-cluster-gpl-7.4.8-linux-glibc2.5-x86_64 /usr/local/mysql/ && cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf && cd /usr/local/mysql && groupadd mysql && useradd -g mysql mysql && chown -R root * && chown -R mysql data && chgrp -R mysql * && scripts/mysql_install_db --user=mysql && cp support-files/mysql.server /etc/rc.d/init.d/mysqld && chmod +x /etc/rc.d/init.d/mysqld && chkconfig --add mysqld
如果是配置管理端,,进入mysql安装目录,应在以上配置好后进行以下操作 cp bin/ndb_mgm*/usr/local/bin cd /usr/local/bin
chmod +x ndb_mgm* 11、在管理端新建配置文件 cd /var/lib
mkdir mysql-cluster vi config.ini
添加以下内容: [NDBD DEFAULT] NoOfReplicas=1 DataMemory=500M IndexMemory=300M [MYSQLD DEFAULT] [NDB_MGMD DEFAULT] [TCP DEFAULT] [NDB_MGMD] nodeid=1
HostName=20.251.37.212
DataDir=/usr/local/mysql/mysql-cluster-gpl-7.4.8-linux-glibc2.5-x86_64/data/ [NDBD] nodeid=2
HostName=20.251.37.213
DataDir=/usr/local/mysql/mysql-cluster-gpl-7.4.8-linux-glibc2.5-x86_64/data/ [MYSQLD] nodeid=3
HostName=20.251.37.211 [MYSQLD] nodeid=4
HostName=20.251.37.213 #既做数据端,也做mysql节点 [MYSQLD] nodeid=5
HostName=20.251.37.214 [MYSQLD] nodeid=6
HostName=20.251.37.215 [MYSQLD] 保存后退出
12、配置NDB和MYSQL的my.cnf文件 在my.cnf文件中加入 ndbcluster
ndb-connectstring=20.251.37.212 [MYSQL_CLUSTER]
ndb-connectstring=20.251.37.212 保存文件退出 13、启动顺序: A、启动管理端 cd /usr/local/bin
ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial #第一次要带最后那个参数,后面如果对文件有修改带--reload参数就行,第一次要带--nodeid参数 B、启动数据端
进入mysql安装目录下的bin目录
./ndbd --initial
C、sql节点只需启动mysql服务即可
过程中碰到的问题:
1、第二次启动mysql的时候报错,错误信息如下:
Starting MySQL ERROR! Couldn't find MySQL server (/usr/local/mysql/bin/mysqld_safe) 原因:因为my.cnf文件中未配置serverd的目录导致 解决办法:在/etc目录修改my.cnf文件 添加以下配置: [mysql.server]
basedir='mysql安装路径'
2、加载管理端配置文件时报错
现象:使用ndb_mgmd -f /var/lib/mysql-cluster/config.ini命令时报错
2015-11-17 01:04:42 [MgmtSrvr] ERROR -- Could not determine which nodeid to use for this node. Specify it with --ndb-nodeid=
解决办法:ndb_mgmd --ndb_nodeid=1 --initial -f /var/lib/mysql-cluster/config.ini
3、初始化数据端的时候报错
现象:使用./ndbd --initial初始化数据端命令报错
2015-11-16 19:12:55 [ndbd] INFO -- Angel connected to '192.168.37.212:1186'
2015-11-16 19:12:55 [ndbd] ERROR -- Failed to allocate nodeid, error: 'Error: Could not alloc node id at 192.168.37.212 port 1186: Connection done from wrong host ip 192.168.37.211.' 解决办法:关闭防火墙 server iptables stop
4、在my.cnf中配置了集群信息后,启动mysql服务报错,报错信息为退出时无法更新“机器名.pid”
解决办法:只要将my.cnf中关于集群的配置信息注释即可解决,在管理端reload文件config.ini后,再次放开注释重启不报错
注意
1、客户端管理
cd /usr/local/bin/ ./ndb_mgm
ndb_mgm> show 会有如下信息:
Connected to Management Server at: localhost:1186