MySQL集群配置实验_mysql集群(cluser)7.2.5配置

centos6.2上安装

2、部署情况

管理节点  10.57.220.195

数据节点1 10.57.220.201

数据节点2 10.57.220.202

SQL节点1  10.57.220.197

SQL节点2  10.57.220.199

说明:两个数据节点,互为备份,解决数据节点单点故障,数据冗余

两个sql节点,负责负载均衡,可扩展。可结合lvs

3、准备

groupadd mysql

useradd -g mysql mysql

mkdir /usr/local/mysql

mkdir /usr/local/mysql/sock

tar -xvzf mysql-cluster-gpl-7.2.5-linux2.6-i686.tar.gz

cp -R ./mysql-cluster-gpl-7.2.5-linux2.6-i686/* /usr/local/mysql

chown -R mysql.mysql /usr/local/mysql/data

chown -R mysql.mysql /usr/local/mysql/sock

chgrp -R mysql .

./scripts/mysql_install_db --user=mysql

以上所有节点都要执行

管理节点还要:

mkdir /usr/local/mysql/mydata

4、配置管理节点

[ndbd default]

NoOfReplicas= 2

DataMemory=100M

indexMemory=30M

[ndb_mgmd]

NodeID=1

HostName=10.57.220.195

Datadir=/usr/local/mysql/mydata

[ndbd]

NodeId=2

HostName= 10.57.220.201

DataDir= /usr/local/mysql/data

[ndbd]

NodeId=3

HostName= 10.57.220.202

DataDir= /usr/local/mysql/data

[mysqld]

NodeId=4

Hostname=10.57.220.197

[mysqld]

NodeId=5

Hostname=10.57.220.199

5、配置数据节点

节点1

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address  = 10.57.220.201

ndb-connectstring=10.57.220.195

[mysql_cluster]

ndb-connectstring=10.57.220.195

节点2

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address  = 10.57.220.202

ndb-connectstring=10.57.220.195

[mysql_cluster]

ndb-connectstring=10.57.220.195

6、配置sql节点

sql节点1

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address  = 10.57.220.197

ndb-connectstring=10.57.220.195

[mysql_cluster]

ndb-connectstring=10.57.220.195

sql节点2

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address  = 10.57.220.199

ndb-connectstring=10.57.220.195

[mysql_cluster]

ndb-connectstring=10.57.220.195

6、启动

次序必须:管理节点->数据节点->sql节点

1)先停掉防火墙

service iptables stop

2)启动管理node

/usr/local/mysql/bin/ndb_mgmd –-initial  -f /usr/local/mysql/config.ini

(首次启动要–-initial ),启动 默认创建 /usr/local/mysql/mysql-cluster目录,有时候需要清理掉/usr/local/mysql/mysql-cluster

4)启动数据节点:

启动两个数据节点

/usr/local/mysql/bin/ndbd –-initial

首次启动,则需要添加--initial参数,以便进行NDB节点的初始化工作。在以后的启动过程中,则是不能添加该参数的,否则ndbd程序会清除在之前建立的所有用于恢复的数据文件和日志文件。

3)启动sql节点:

启动两个sql节点

/usr/local/mysql/bin/mysqld_safe --user=mysql &

5)最后在管理节点上检查

/usr/local/mysql/bin/ndb_mgm -e show

success 如下:

Connected to Management Server at: localhost:1186

Cluster Configuration

---------------------

[ndbd(NDB)]     2 node(s)

id=2    @10.57.220.201  (mysql-5.5.20 ndb-7.2.5, Nodegroup: 0,Master)

id=3    @10.57.220.202  (mysql-5.5.20 ndb-7.2.5, starting, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)

id=1    @10.57.220.195  (mysql-5.5.20 ndb-7.2.5)

[mysqld(API)]   2 node(s)

id=4    @10.57.220.197  (mysql-5.5.20 ndb-7.2.5)

id=5    @10.57.220.199  (mysql-5.5.20 ndb-7.2.5)

7、测试

1)通过10.57.220.197:3306 和 10.57.220.199:3306 测试sql

可用mysql-front 分别在两个地方修改一表,结果是同步,共享的。ok

2)重点测试数据节点

重启动master数据节点, 则自动切换,另一个变为master。结论,能处理单点故障。 ok

3)关闭集群

在管理节点上执行:

ndb_mgm -e shutdown     #将安全的关闭管理节点和数据节点。

关闭SQL节点

mysqladmin shutdown     #或别的方式关闭。

4)重启集群

管理节点

/usr/local/mysql/bin/ndb_mgmd -f /usr/local/mysql/config.ini

数据节点

/usr/local/mysql/bin/ndbd

sql节点

/usr/local/mysql/bin/mysqld_safe --user=mysql &

8、打包配置文件

1)以上配置文件(一个管理节点的)

rar.gif 配置.rar 

2)两个管理节点

另外,为了做到完全无单点问题,管理节点也采用两个。

配置文件为rar.gif 2个管理节点配置.rar 

说明:

管理节点1  10.57.220.195

管理节点2  10.57.220.196

数据节点1 10.57.220.201

数据节点2 10.57.220.202

SQL节点1  10.57.220.197

SQL节点2  10.57.220.199

两个管理节点配置相同:如下

[ndbd default]

NoOfReplicas= 2

DataMemory=100M

indexMemory=30M

[ndb_mgmd]

NodeID=1

HostName=10.57.220.195

Datadir=/usr/local/mysql/mydata

[ndb_mgmd]

NodeID=2

HostName=10.57.220.196

Datadir=/usr/local/mysql/mydata

[ndbd]

NodeId=3

HostName= 10.57.220.201

DataDir= /usr/local/mysql/data

[ndbd]

NodeId=4

HostName= 10.57.220.202

DataDir= /usr/local/mysql/data

[mysqld]

NodeId=5

Hostname=10.57.220.197

[mysqld]

NodeId=6

Hostname=10.57.220.199

数据节点分别如下

数据节点1

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address  = 10.57.220.202

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

[mysql_cluster]

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

数据节点2

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address = 10.57.220.201

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

[mysql_cluster]

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

sql节点配置如下

sql节点1

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address  = 10.57.220.199

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

[mysql_cluster]

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

sql节点2

[mysqld]

ndbcluster

datadir=/usr/local/mysql/data

basedir=/usr/local/mysql

bind-address = 10.57.220.197

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

[mysql_cluster]

ndb-connectstring=10.57.220.195:1186,10.57.220.196:1186

测试:一个管理节点机器宕机,不影响集群系统正常操作。从而完全避免了单点故障问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值