构建具有负载均衡功能MySQL集群 PART 1
过去的五天都在研究MySQL集群和负载均衡,GOOGLE了,看了N多的资料。感觉颇多有用的资料都是英文的,看来英文水平真是值得老板们和员工们重视啊。经过在有用的和无用的资料堆中翻滚、挣扎,今天终于把这个MySQL集群搞定。
一、系统平台:所有节点采用CentOS 5
二、网络结构(三台机器):
Data Node 1: 192.168.0.10
Data Node 2: 192.168.0.11
NDB Management Node: 192.168.0.12
SQL Node 1: 192.168.0.10
SQL Node 2: 192.168.0.11
三、下载、安装软件
1、下载安装包(http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/)
NDB Management Node: MySQL-ndb-management-5.0.51a-0.glibc23.i386.rpm MySQL-ndb-tools-5.0.51a-0.glibc23.i386.rpm
SQL Nodes: MySQL-server-5.0.51a-0.glibc23.i386.rpm MySQL-client-5.0.51a-0.glibc23.i386.rpm MySQL-shared-5.0.51a-0.glibc23.i386.rpm
Data Nodes: MySQL-ndb-storage-5.0.51a-0.glibc23.i386.rpm
2、在各节点中安装相应的包,如提示存在包依赖问题,解决之。
四、配置文件
1、config.ini (NDB Management Node):
[NDBD DEFAULT]
NoOfReplicas=2
# NDB Management Node
[NDB_MGMD]
id=1
hostname=192.168.0.12
datadir=/var/lib/mysql-cluster
# Data Nodes
[NDBD]
id=2
hostname=192.168.0.10
[NDBD]
id=3
hostname=192.168.0.11
# SQL Nodes
[MYSQLD]
id=4
hostname=192.168.0.10
[MYSQLD]
id=5
hostname=192.168.0.11
其中SQL Node的 hostname 不是必须的。
2、my.cnf (Data Node and SQL Node)
# Options for mysqld process:
[mysqld]
ndbcluster # run NDB storage engine
ndb-connectstring=192.168.0.12 # location of management server
# Options for ndbd process:
[mysql_cluster]
ndb-connectstring=192.168.0.12 # location of management server
五、初始启动
NDB Management Node: ndbd_mgmd -f /etc/config.ini
Data Nodes: ndbd --initial
SQL Nodes: service mysql restart (注意要restart)
全部启动完后,回到 NDB Management Node,将看到整个MySQL Cluster 的状态(注意此处 IP 不同):
六、测试
在 SQL Node 1 依次执行以下操作:
(未完待续)