windows+mysql集群搭建-三分钟搞定集群

        在上一篇博客(mysql集群搭建基础篇)里介绍了mysql集群的基本知识,这篇博客讲解如何在windows环境下搭建mysql集群,这段时间在我们架构师的带领下搭建了mysql集群,让我受益很多,下面将会把成果分享一下,手把手教你在三分钟内搭建mysql集群。

   ·准备工作——前期工作

   ·搭建之路——三分钟搞定

   ·测试集群——看成果

【准备工作】

1、mysql-cluster-gpl-7.4.9-winx64

下载方式:

http://dev.mysql.com/downloads/cluster/

2、两台电脑

一台配置管理节点,一个数据节点和一个sql节点,一台配置一个数据节点和一个sql节点。

管理节点:192.168.22.238

数据节点A:192.168.22.238

数据节点B:192.168.22.240

SQL节点A:192.168.22.238

SQL节点B:192.168.22.240

【搭建之路】

一、配置mysql集群

1、将下载的mysql集群压缩包解压到管理节点192.168.22.238的C:mysql目录下:



2、配置管理节点:

在配置管理节点(192.168.22.238)的计算机上的C:MysqlBin目录下建立cluster-logs和config两个文件夹。cluster-logs用来存储日志文件,在config文件夹中建立my.ini和config.ini两个配置文件:

my.ini

[mysql_cluster]
# Options for management node process
config-file=C:/mysql/bin/config/config.ini

config.ini

[ndbd default] 
# Options affecting ndbd processes on all data nodes: 
NoOfReplicas=2                      # Number of replicas 
DataDir=C:/mysql/bin/cluster-data   # Directory for each data node's data files 
                                    # Forward slashes used in directory path, 
                                    # rather than backslashes. This is correct; 
                                    # see Important note in text 

DataMemory=80M                      # Memory allocated to data storage 
IndexMemory=18M                     # Memory allocated to index storage 
                                    # For DataMemory and IndexMemory, we have used the 
                                    # default values. Since the "world" database takes up 
                                    # only about 500KB, this should be more than enough for 
                                    # this example Cluster setup.

[ndb_mgmd] 
# Management process options: 
HostName=192.168.22.238           # Hostname or IP address of management node 
DataDir=C:/mysql/bin/cluster-logs   # Directory for management node log files

[ndbd] 
# Options for data node "A":     
HostName=192.168.22.238             # Hostname or IP address


[ndbd] 
# Options for data node "B":
HostName=192.168.22.240            # Hostname or IP address




[mysqld] 
# SQL node A options:
HostName=192.168.22.238              # Hostname or IP address

[mysqld] 
# SQL node B options:
HostName=192.168.22.240           # Hostname or IP address


3、配置数据节点:

        在配置数据节点(192.168.25.48、192.168.25.49)的计算机上的C:MysqlBin目录下建立cluster-data文件夹,用来存放数据:SQL节点不用任何配置,至此,整个MySQL集群就搭建完成了。

将管理节点(192.168.22.238)电脑C:mysql文件拷到192.168.22.240电脑的C盘

二、启动mysql集群

启动顺序:管理节点→数据节点→sql节点

1、启动管理节点

在cmd中运行命令:

 c:mysqlin db_mgmd.exe --configdir=c:mysqlinconfig --config-file=c:mysqlinconfigconfig.ini --ndb-nodeid=1 --reload –initial



2、启动每个数据节点:

在cmd中运行如下命令:

c:mysqlin dbd.exe --ndb-connectstring=192.168.22.238


3、启动每个sql节点:

在cmd中运行如下命令:

c:mysqlinmysqld.exe --ndbcluster --ndb-connectstring=192.168.22.238 --console




4、查看每个节点的状态

在cmd命令中运行:c:mysqlin db_mgm,再执行“show”命令,可以查看到每个节点的连接状态:



这就表明每个节点均连接正确。

【测试mysql集群】

1、在sql节点A建立数据库并插入数据:

在sql节点A的计算机上(192.168.22.238)的cmd中运行C:mysqlinmysql.exe -u root -p命令登录mysql,接下来需要输入密码时,密码默认为空(直接回车)。

·创建名为“chan”的数据库:

create database chan;

·创建名为“T_chan”的表:

use chan;
create table T_chan(Name varchar(23),Age int) engine=ndbcluster;

注意建表语句后面一定要加上 engine=ndbcluster,为什么要加上,在下一篇博客中会介绍。

·插入数据:

insert into T_chan values('chan',23);

·查询数据:

select * from T_chan;



2、在sql节点B查到数据

在sql节点B的计算机上(192.168.22.240)的cmd中运行C:mysqlinmysql.exe -u root -p命令登录mysql。


执行 show databases; 命令可以查看到在sql节点A新建的数据库; 
执行

use chan; 
select * from T_chan; 
可以查询到在sql节点A插入的数据。


到这里mysql集群搭建就已经完成了。在搭建过程中也遇到了一些问题,在接下来的博客中,将会将会把我遇到的问题分享给大家。

【总结】

        mysql集群我们现在做到的是加入一个数据节点宕机后,不会影响整个集群的运行,数据也不会丢失,保证了数据的完整性。第一次搭建的时候遇到了一些困难,不过这些都是小事啦。看完上面的步骤是不是觉得mysql搭建很简单,熟练以后在搭建的时候会遇到什么问题,以及如何解决,轻轻松松的就搞定了。

原文地址:https://www.cnblogs.com/chenxiaochan/p/7237587.html