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

时间:2021-10-27 04:20:54

注:本文来源:  陈晓婵   《  windows+mysql集群搭建-三分钟搞定集群   》

一:mysql集群搭建教程-基础篇

计算机一级考试系统要用集群,目标是把集群搭建起来,保证一个库dang了,不会影响程序的运行。于是在孟海滨师哥的带领下开始了我的第一次搭建mysql集群,首先看了一些关于集群的资料,然后根据步骤一步步的整,遇到了一些问题,在这里把我遇到的问题以及解决方法分享出来。

【是什么】

        集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术。

        MySQL集群技术在分布式系统中为MySQL数据提供了冗余特性,增强了安全性,使得单个MySQL服务器故障不会对系统产生巨大的负面效应,系统的稳定性得到保障。

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

一个mysql集群包含三个节点:管理节点,数据节点和sql节点。启动顺序为:管理节点,数据节点,sql节点。管理节点只能一个,数据节点和sql节点可以根据需要设置个数。

管理节点:(也可以称管理服务器)主要负责管理数据节点和SQL节点,还有集群配置文件和集群日志文件。它监控其他节点的工作状态,能够启动、关闭或重启某个节点。其他节点从管理节点检索配置数据,当数据节点有新事件时就把事件信息发送给管理节点并写入集群日志。

数据节点:负责存储数据

sql节点:通过它进行sql操作。

【为什么】

为什么要使用集群还要通过它的优点来看,集群用较低的成本,在性能,灵活可用方面上有很大的改进

【优点】

高可伸缩性:服务器集群具有很强的可伸缩性。 随着需求和负荷的增长,可以向集群系统添加更多的服务器。在这样的配置中,可以有多台服务器执行相同的应用和数据库操作。
高可用性:在不需要操作者干预的情况下,防止系统发生故障或从故障中自动恢复的能力。通过把故障服务器上的应用程序转移到备份服务器上运行,集群系统能够把正常运行时间提高到大于99.9%,大大减少服务器和应用程序的停机时间。
高可管理性:系统管理员可以从远程管理一个、甚至一组集群,就好象在单机系统中一样。

【缺点】

        我们知道集群中的应用只在一台服务器上运行,如果这个应用出现故障,其它的某台服务器会重新启动这个应用,接管位于共享磁盘柜上的数据区,进而使应用重新正常运转。我们知道整个应用的接管过程大体需要三个步骤:侦测并确认故障、后备服务器重新启动该应用、接管共享的数据区。因此在切换的过程中需要花费一定的时间,原则上根据应用的大小不同切换的时间也会不同,越大的应用切换的时间越长。

【总结】

        这是mysql集群的首篇博客,主要介绍集群的基础知识,集群的由来,为什么使用,以及集群的优缺点,下篇博客讲解mysql集群在windows环境下的搭建过程以及在搭建过程中遇到的问题以及解决方案。

二:windows+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目录下:

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

                   2、配置管理节点:

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

my.ini

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

config.ini

  1
2 [ndbd default]
3 # Options affecting ndbd processes on all data nodes:
4 NoOfReplicas=2 # Number of replicas
5 DataDir=C:/mysql/bin/cluster-data # Directory for each data node's data files
6 # Forward slashes used in directory path,
7 # rather than backslashes. This is correct;
8 # see Important note in text
9
10 DataMemory=80M # Memory allocated to data storage
11 IndexMemory=18M # Memory allocated to index storage
12 # For DataMemory and IndexMemory, we have used the
13 # default values. Since the "world" database takes up
14 # only about 500KB, this should be more than enough for
15 # this example Cluster setup.
16
17 [ndb_mgmd]
18 # Management process options:
19 HostName=192.168.22.238 # Hostname or IP address of management node
20 DataDir=C:/mysql/bin/cluster-logs # Directory for management node log files
21
22 [ndbd]
23 # Options for data node "A":
24 HostName=192.168.22.238 # Hostname or IP address
25
26
27 [ndbd]
28 # Options for data node "B":
29 HostName=192.168.22.240 # Hostname or IP address
30
31
32
33
34 [mysqld]
35 # SQL node A options:
36 HostName=192.168.22.238 # Hostname or IP address
37
38 [mysqld]
39 # SQL node B options:
40 HostName=192.168.22.240 # Hostname or IP address
41
42

                   3、配置数据节点:

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

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

          二、启动mysql集群

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

                   1、启动管理节点

在cmd中运行命令:

c:\mysql\bin\ndb_mgmd.exe --configdir=c:\mysql\bin\config --config-file=c:\mysql\bin\config\config.ini --ndb-nodeid=1 --reload –initial

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

                   2、启动每个数据节点:

在cmd中运行如下命令:

c:\mysql\bin\ndbd.exe --ndb-connectstring=192.168.22.238

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

                   3、启动每个sql节点:

在cmd中运行如下命令:

c:\mysql\bin\mysqld.exe --ndbcluster --ndb-connectstring=192.168.22.238 --console

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

                   4、查看每个节点的状态

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

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

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

          三:【测试mysql集群】

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

  1 ---在sql节点A的计算机上(192.168.22.238)的cmd中运行C:\mysql\bin\mysql.exe -u root -p命令登录mysql,接下来需要输入密码时,密码默认为空(直接回车)。
2
3
4 --·创建名为“chan”的数据库:
5
6 create database chan;
7
8 ---·创建名为“T_chan”的表:
9
10 use chan;
11 create table T_chan(Name varchar(23),Age int) engine=ndbcluster;
12
13 --注意建表语句后面一定要加上 engine=ndbcluster,为什么要加上,在下一篇博客中会介绍。
14
15 --·插入数据:
16
17 insert into T_chan values('chan',23);
18
19
20 ·查询数据:
21
22 select * from T_chan;
23

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


                   2、在sql节点B查到数据

  1 ---在sql节点B的计算机上(192.168.22.240)的cmd中运行C:\mysql\bin\mysql.exe -u root -p命令登录mysql。
2
3
4
5 --执行 show databases; 命令可以查看到在sql节点A新建的数据库;
6 --执行
7
8 use chan;
9 select * from T_chan;
10 --可以查询到在sql节点A插入的数据。

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

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



          四:【总结】

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




——————————————————————————————————————————————————————————————————————————————————————————————

windows+mysql集群搭建-三分钟搞定集群的更多相关文章

  1. SSM框架三分钟搞定分页查询

    使用的国产第三方jar   pagehelper 里面的基本属性值 //当前页 private int pageNum; //每页的数量 private int pageSize; //当前页的数量 ...

  2. 三分钟搞定Python中的装饰器

    python的装饰器是python的特色高级功能之一,言简意赅得说,其作用是在不改变其原有函数和类的定义的基础上,给他们增添新的功能. 装饰器存在的意义是什么呢?我们知道,在python中函数可以调用 ...

  3. 搭建高可用mongodb集群(三)—— 深入副本集内部机制

    在上一篇文章<搭建高可用mongodb集群(二)—— 副本集> 介绍了副本集的配置,这篇文章深入研究一下副本集的内部机制.还是带着副本集的问题来看吧! 副本集故障转移,主节点是如何选举的? ...

  4. 搭建高可用mongodb集群(三)&mdash&semi;&mdash&semi; 深入副本集内部机制

    在上一篇文章<搭建高可用mongodb集群(二)-- 副本集> 介绍了副本集的配置,这篇文章深入研究一下副本集的内部机制.还是带着副本集的问题来看吧! 副本集故障转移,主节点是如何选举的? ...

  5. LIN、CAN、FlexRay、MOST,三分钟搞明白四大汽车总线

    LIN.CAN.FlexRay.MOST,三分钟搞明白四大汽车总线 2016-09-21 13:09 汽车中的电子部件越来越多,光是ECU就有几十个,这么多的电子单元都要进行信息交互.传统的点对点通信 ...

  6. zookeeper-架构设计与角色分工-《每日五分钟搞定大数据》

    本篇文章阅读时间5分钟左右 点击看<每日五分钟搞定大数据>完整思维导图   zookeeper作为一个分布式协调系统,很多组件都会依赖它,那么此时它的可用性就非常重要了,那么保证可用性的同 ...

  7. zookeeper核心-zab协议-《每日五分钟搞定大数据》

    上篇文章<paxos与一致性>说到zab是在paxos的基础上做了重要的改造,解决了一系列的问题,这一篇我们就来说下这个zab. zab协议的全称是ZooKeeper Atomic Bro ...

  8. 【转】让你10分钟搞定Mac--最简单快速的虚拟安装

    文章出处:让你10分钟搞定Mac--最简单快速的虚拟安装http://bbs.itheima.com/thread-106643-1-1.html (出处: 黑马程序员训练营论坛) 首先说明一下. 第 ...

  9. 一分钟搞定触手app主页酷炫滑动切换效果

    代码地址如下:http://www.demodashi.com/demo/12826.html 前言: 前几天在看手机直播的时候,自己就用上了触手app.一进到主页就看上了里面页面切换的效果,自己想这 ...

随机推荐

  1. 各数据库查询前N条记录的SQL语句

    sql在不同数据库查询前几条数据 1. ORACLE SELECT * FROM TABLE_NAME WHERE ROWNUM <= N;  HQL: from table_name t or ...

  2. greenplum集群安装

    一.环境配置 1.地址分配 192.168.1.201 mdw master 192.168.1.202 sdw1 segment1 192.168.1.203 sdw2 segment2 2.创建用 ...

  3. Android下用Properties保存程序配置

    读写函数分别例如以下: import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.Proper ...

  4. linux运维常用命令

    1.linux启动过程 开启电源 --> BIOS开机自检 --> 引导程序lilo或grub--> 内核的引导(kernel boot)--> 执行init(rc.sysin ...

  5. linux-centos挂载新硬盘操作

    类似的文章网上已经有很多,这里是记录重要操作的命令,精简流程 精简后的命令: fdisk -ldf -hfdisk /dev/vdbfdisk -l /dev/vdbmkfs -t ext4 /dev ...

  6. linux下的守护进程及会话、进程组

    守护进程.会话.进程组网上有许多不错的资料.我也是网上搜罗了一堆,加上自己的理解.不敢说原创,只是写在这怕自己忘记罢了.才疏学浅,难免有错误,欢迎大家指正.下面这篇写很不错,大家可以去看看:http: ...

  7. Unity 命令行参数

    通常情况下,Unity可以通过双击桌面上的图标启动,也可以通过输入命令行启动(例如,MacOS终端或者Windows的CMD窗口),通过这种方式在启动时会接受命令和信息.我们可以制作一些小工具跟Uni ...

  8. Oracle 11g RAC 修改各类IP地址

    Oracle 11g RAC 修改各类IP地址 首先,我们都知道Oracle 11g RAC中的IP主要有:Public IP.VIP.SCAN VIP.Private IP这几种. 一般这类改IP地 ...

  9. CSS继承、层叠和特殊性

    1.继承 (1)样式应用于某个特定的HTML标签元素,而且应用于其后代. (2)但某些标签不适用,如border: (3)例子:p{color:red;}设置了颜色 <p class=&quot ...

  10. C&plus;&plus; 关闭显示器

    好困,想躺一下,关灯.上床,笔记本的屏幕还亮着,好刺眼,睡不着! 脑子里出现一个疑问,怎么用C++写一个关闭屏幕的小程序呢? 参考了网上已有的例子,最简化: #include <windows. ...