首页 > 代码库 > 7. mysql-cluster 集群 - 安装篇

7. mysql-cluster 集群 - 安装篇

本文主要介绍Mysql-Cluster的安装,首先先简单了解一下:(linux用户,本人 debian)

  MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署“内存中”数据库的 Cluster 。通过无共享体系结构,系统能够使用廉价的硬件,而且对软硬件无特殊要求。此外,由于每个组件有自己的内存和磁盘,不存在单点故障。(百度粘贴-_-)

一、简介

Mysql-cluster分为:

1.      管理节点:管理MySQL Cluster内的其他节点,如提供配置数据、启动并停止节点、运行备份等

2.      数据节点:用于保存 Cluster的数据

3.      Sql节点:用来访问 Cluster数据的节点


技术分享


二、安装

此安装为1个管理节点,2个数据节点,2个sql节点,安装在两台机器,一台机器:管理节点,数据节点,sql节点,另一台:数据节点,sql节点

 节点名称

 IP

 管理节点

 192.168.1.111

 数据节点1

 192.168.1.111

 数据节点2

 192.168.1.112

 Sql节点1

 192.168.1.111

 Sql节点2

 192.168.1.112

 

三、安装步骤

1.      为mysqld增加一个登陆用户组,两台服务器都需要

#  groupadd mysql

#  useradd –g mysqlmysql

 

2.      安装管理节点

#  tar zxvf mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz

#  mv mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64/*/opt/mysql –r

 

创建mysql-cluster目录,并配置config.ini

#  mkdir/apps/mysql/mysql-cluster

#  cd/apps/mysql/mysql-cluster

#  vi config.ini

内容如下:

 

[ndbddefault]

NoOfReplicas=2    (代表sql节点的数量)

DataMemory=500M       

indexMemory=300M     

[tcpdefault]

SendBufferMemory=2M

ReceiveBufferMemory=2M

 

[ndb_mgmddefault]

PortNumber=1186

Datadir=/apps/mysql/mysql-cluster

[ndb_mgmd]

NodeId=1

HostName=192.168.1.111

 

[ndbd]

NodeId=2

HostName=192.168.1.111

DataDir=/apps/mysql/data

[ndbd]

NodeId=2

HostName=192.168.1.112

DataDir=/apps/mysql/data

 

[mysqld]

NodeId=3

Hostname=192.168.1.111

[mysqld]

NodeId=3

Hostname=192.168.1.112


3.      安装数据节点

Vi /etc/my.cnf

如下:

[mysqld]  

datadir=/opt/mysql/ndbdata

port =3306

 

ndbcluster  #数据节点(因为在一台机器所以合并)            

ndb-connectstring=192.168.1.111

port =3307

[mysql_cluster]

ndb-connectstring  = 192.168.1.111


4.      安装sql节点

Vi /etc/my.cnf

如下:

[mysqld]  

datadir=/opt/mysql/ndbdata

port =3306

 

ndbcluster  #数据节点(因为在一台机器所有合并)            

ndb-connectstring=192.168.1.111

port =3307

[mysql_cluster]

ndb-connectstring  = 192.168.1.111 


next:(安装mysqld)

 #  cd /opt/mysql

         #  ./scripts/mysql_install_db –user=mysql (安装到了 /opt/mysql/ndbdata)


5.      开始启动cluster

开启顺序: 管理节点->数据节点->sql节点

 

管理节点启动

#  cd /opt/mysql

#  ./bin/ndb_mgmd –f /apps/mysql/mysql-cluster/config.ini--configdir=/apps/mysql/mysql-cluster/--ndb-nodeid=1

 

数据节点启动(两个节点都要启动,不然sql节点不能启动)

#  cd /opt/mysql

#  ./bin/ndbd –-initial –-ndb-connectstring=192.168.1.111:1186

 

Sql节点启动

#  cd /opt/mysql/ndbdata

#  ../bin/mysqld_safe –user=mysql &

 

6.      查看

#  cd  /opt/mysql/

#  ./bin/ndb_mgm –e show

 

Connectedto Management Server at: 192.168.1.111:1186

ClusterConfiguration

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

[ndbd(NDB)]     1 node(s)

id=2 @192.168.1.111 (mysql-5.6.21 ndb-7.3.7, Nodegroup: 0, *)

id=3 @192.168.1.112 (mysql-5.6.21 ndb-7.3.7, Nodegroup: 0, *)

 

[ndb_mgmd(MGM)]         1 node(s)

id=1 @192.168.1.111 (mysql-5.6.21 ndb-7.3.7)

 

[mysqld(API)]   1 node(s)

id=4 @192.168.1.112  (mysql-5.6.21 ndb-7.3.7)

id=5 @192.168.1.112  (mysql-5.6.21 ndb-7.3.7)

 

说明已经成功

 

7.      问题

Q:  sql节点无法启动“Tablesnot available after 30 seconds.  Considerincreasing --ndb-wait-setup value”

A:  数据节点没有全部启动

Q:  sql节点启动时: “Unable to lock./ibdata1, error: 11”

A:  已经启动了

Q:  登录sql时:mysql –u root-p

1045 access denied for user ‘root‘@‘localhost‘ using password yes 

A:  直接  mysql –u root (需要修改配置文件)


注:欢迎踊跃提出疑问,共同进步!

 

 

 

 

7. mysql-cluster 集群 - 安装篇