mysql高可用方案之集群(cluster)
1.实验环境我用三台服务器搭建mysql cluster环境,sql节点和数据节点在同一服务器上,管理节点单独一台.
cluster node1:192.168.1.102 data node1:192.168.1.102
cluster node2:192.168.1.104 data node2:192.168.1.104
manager node:192.168.1.19
OS:centos 6.4 64位
2.在sql节点和数据节点安装mysql cluster(注:cluster节点1和节点2是一样的)
cluster node1:
# wget http://mirrors.sohu.com/mysql/MySQL-Cluster-7.3/mysql-cluster-gpl-7.3.6-linux-glibc2.5-x86_64.tar.gz
# tar xvf mysql-cluster-gpl-7.3.6-linux-glibc2.5-x86_64.tar.gz
# mv mysql-cluster-gpl-7.3.6-linux-glibc2.5-x86_64 /usr/local/mysql-cluster-gpl-7.3.6/
# cd /usr/local/
# groupadd mysql
# useradd-r -M -s /sbin/nologin mysql
# chown -R root:mysql mysql-cluster-gpl-7.3.6/
# chown -R mysql:mysql mysql-cluster-gpl-7.3.6/data/
# ./mysql_install_db--user=mysql --datadir=/usr/local/mysql-cluster-gpl-7.3.6/data --basedir=/usr/local/mysql-cluster-gpl-7.3.6
# cd ../bin/
# cp -a ../support-files/mysql.server/etc/init.d/mysqld
# chkconfig--add mysqld
# chkconfigmysqld on
# cp -a ../my.cnf/etc/my.cnf
# vim /etc/my.cnf
basedir = /usr/local/mysql-cluster-gpl-7.3.6 --数据库的安装路径
datadir = /usr/local/mysql-cluster-gpl-7.3.6/data --数据库的数据目录
port = 3306
ndbcluster --集群服务
ndb-connectstring=192.168.1.19 --管理节点的IP地址
ndb-connectstring=192.168.1.19 --管理节点的IP地址
# ./mysqld_safe --user=mysql
# /etc/init.d/mysqld restart
ERROR! MySQL server PID file could not be found!
Starting MySQL...................................... SUCCESS!
# netstat -anp |grep mysql
tcp 0 0 :::3306 :::* LISTEN 1982/mysqld
unix2 [ ACC ] STREAM LISTENING 484811982/mysqld /tmp/mysql.sock# /etc/init.d/iptables stop
iptables: Setting chains to policy ACCEPT: filter
iptables: Flushing firewall rules:
iptables: Unloading modules:
#
cluster node2:
注:节点2上的mysql cluster安装和节点1是一样的,配置文件也是一样
3.管理节点
# wget http://mirrors.sohu.com/mysql/MySQL-Cluster-7.3/mysql-cluster-gpl-7.3.6-linux-glibc2.5-x86_64.tar.gz
# tar xvf mysql-cluster-gpl-7.3.6-linux-glibc2.5-x86_64.tar.gz
#mv mysql-cluster-gpl-7.3.6-linux-glibc2.5-x86_64 /usr/local/mysql-cluster-gpl-7.3.6/
# cd /usr/local/
# groupadd mysql
# useradd-r -M -s /sbin/nologin mysql
# chown -R root:mysql mysql-cluster-gpl-7.3.6/
# chown -R mysql:mysql mysql-cluster-gpl-7.3.6/data/
# ./mysql_install_db--user=mysql --datadir=/usr/local/mysql-cluster-gpl-7.3.6/data --basedir=/usr/local/mysql-cluster-gpl-7.3.6
# cd ../bin/
# cp -a ../my.cnf/etc/my.cnf
# vim /etc/my.cnf
basedir = /usr/local/mysql-cluster-gpl-7.3.6
datadir = /usr/local/mysql-cluster-gpl-7.3.6/data
port = 3306
# /etc/init.d/iptables stop
iptables: Flushing firewall rules:
iptables: Setting chains to policy ACCEPT: filter
iptables: Unloading modules:
# mkdir/var/lib/mysql-cluster/
# vim/var/lib/mysql-cluster/config.ini --配置文件中注意大小写
NoOfReplicas=1
portnumber=2202
Id=1
Hostname=192.168.1.19
datadir=/usr/local/mysql-cluster-gpl-7.3.6/data
Id=2
Hostname=192.168.1.102
datadir=/usr/local/mysql-cluster-gpl-7.3.6/data/
Id=3
Hostname=192.168.1.104
datadir=/usr/local/mysql-cluster-gpl-7.3.6/data/
Id=4
Hostname=192.168.1.102
Id=5
Hostname=192.168.1.104
# ./ndb_mgmd --configdir=/var/lib/mysql-cluster/ -f /var/lib/mysql-cluster/config.ini--initial--启动管理节点服务
MySQL Cluster Management Server mysql-5.6.17 ndb-7.3.6
# netstat -anp | grep ndb
tcp 0 0 0.0.0.0:1186 0.0.0.0:* LISTEN 3569/ndb_mgmd
tcp 0 0 192.168.1.105:1186 192.168.1.102:45799 ESTABLISHED 3569/ndb_mgmd
tcp 0 0 192.168.1.105:1186 192.168.1.104:46933 ESTABLISHED 3569/ndb_mgmd
tcp 0 0 127.0.0.1:1186 127.0.0.1:55347 ESTABLISHED 3569/ndb_mgmd
tcp 0 0 192.168.1.105:1186 192.168.1.102:45800 ESTABLISHED 3569/ndb_mgmd
tcp 0 0 192.168.1.105:1186 192.168.1.102:45801 ESTABLISHED 3569/ndb_mgmd
tcp 0 0 127.0.0.1:55347 127.0.0.1:1186 ESTABLISHED 3569/ndb_mgmd
unix3 [ ] STREAM CONNECTED 209773569/ndb_mgmd
unix3 [ ] STREAM CONNECTED 209763569/ndb_mgmd
#
4.启动cluster节点和数据库服务
cluster node1:
# ./ndbd --initial
2014-10-10 09:59:20 INFO -- Angel connected to '192.168.1.19:1186'
2014-10-10 09:59:20 INFO -- Angel allocated nodeid: 2
# ../support-files/mysql.server start
Starting MySQL SUCCESS!
#
cluster node2:
# ./ndbd --initial
2014-10-10 10:01:24 INFO -- Angel connected to '192.168.1.19:1186'
2014-10-10 10:01:24 INFO -- Angel allocated nodeid: 3
# ../support-files/mysql.server start
Starting MySQL SUCCESS!
#
管理节点查看信息:
# ./ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
2 node(s)
id=2 @192.168.1.102(mysql-5.6.17 ndb-7.3.6, Nodegroup: 0, *)
id=3 @192.168.1.104(mysql-5.6.17 ndb-7.3.6, Nodegroup: 1)
1 node(s)
id=1 @192.168.1.19(mysql-5.6.17 ndb-7.3.6)
2 node(s)
id=4 @192.168.1.102(mysql-5.6.17 ndb-7.3.6)
id=5 @192.168.1.102(mysql-5.6.17 ndb-7.3.6)
ndb_mgm>
页:
[1]