Mysql Cluster 集群 windows版本
VM1:192.168.220.102 管理节点(MGM)
VM2:192.168.220.103 数据节点(NDBD1),SQL节点(SQL1)
VM3:192.168.220.104 数据节点(NDBD2),SQL节点(SQL2)
MySQL Cluster版本:7.4.6 (MSI Installer) 下载地址:http://dev.mysql.com/downloads/cluster/
测试工具:Navicate for MySQL
三种节点:
管理节点:用于管理集群共它节点; 守护进程ndb_mgmd
数据节点:用于保存集群的数据; 守护进程ndbd
SQL节点:用于连接数据节点;守护进程mysqld
解释一下 管理节点是负责管理数据节点和SQL节点的相当于集群的大脑, 数据节点是专门负责集群存储数据的, SQL节点说白了就是给你工具连接用的。
第一步先配置管理节点,把现在下来的安装包安装好以后。
到根目录 C:\Program Files\MySQL\MySQL Cluster 7.4 下面添加一个配置文件 配置如下
[ndbd default]
NoOfReplicas=2
MaxNoOfTables=1024
MaxNoOfUniqueHashIndexes=1024
MaxNoOfOrderedIndexes=1024
MaxNoOfAttributes=10000
[ndb_mgmd]
NodeId=1
HostName=192.168.220.102
DataDir=C:\Program Files\MySQL\MySQL Cluster 7.4\data
[ndbd]
NodeId=21
HostName=192.168.220.103
DataDir=C:\Program Files\MySQL\MySQL Cluster 7.4\data
[ndbd]
NodeId=22
HostName=192.168.220.104
DataDir=C:\Program Files\MySQL\MySQL Cluster 7.4\data
[mysqld]
NodeId=11
HostName=192.168.220.103
[mysqld]
NodeId=12
HostName=192.168.220.104
请看的人一定要按照我上面的配置来进行配置,千万别去乱改文件夹名称。更不要去随意添加目录,因为笔者看了网上很多傻逼博文就是随意添加目录修改目录名
最后把本来很清晰的目录结构搞的混乱不堪,导致后面出了一大堆错。现在已经是凌晨1点了,忙到现在都是因为这些SB博主XJBG的结果。
废话不多说按照上面的配置好以后,看下下面定义节点的意思。总之就是1个管理节点 2个数据节点 2个SQL节点。
[NDBD]:定义了集群的数据节点
[MYSQLD]:定义了集群的MySQL服务器节点
[MGM]或[NDB_MGMD]:定义了集群的管理服务器节点
[NDB_MGMD]Id:节点唯一的标识
[NDBD]NoOfReplicas:全局参数仅能在[NDBD DEFAULT]中设置,它定义了集群中每个表保存的副本数。该参数还指定了节点组的大小。节点组指的是保存相同信息的节点集合
[NDBD]DataDir:该参数指定了存放跟踪文件、日志文件、 pid文件以及错误日志的目录
[MYSQLD]basedir:使用指定目录作为根目录
[MYSQLD]datadir:使用指定目录读取数据库文件
上面配置好以后基本就完成了一大部分了,下面来配置数据节点和SQL节点。在一般情况 数据节点和SQL节点是成对出现的。意思就是一台Mysql服务器是由两个节点构成。下面来看看怎么配置一台集群下的Mysql 服务器:
首先将下载的 MySQL Cluster 7.4 安装好,然后找到根目录C:\Program Files\MySQL\MySQL Cluster 7.4 然后添加一个名为my.ini 的配置文件。配置内容如下
[mysqld]
character_set_server=utf8 basedir="C:\Program Files\MySQL\MySQL Cluster 7.4" datadir="C:\Program Files\MySQL\MySQL Cluster 7.4\data" sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES ndbcluster
ndb-connectstring=192.168.220.102 explicit_defaults_for_timestamp=true [mysql_cluster]
ndb-connectstring=192.168.220.102
这里简单说一下,其实就是配置SQL节点和数据节点的管理服务器是哪台服务器。这里我们直接配置成我们开始设置好的管理节点服务器地址就行了,记住
basedir 和 datadir 不要填错了不然运行会出现各种奇葩错误,在这里我很想喷一下我之前看到的那些SB博文。居然不把这里说清楚,不说清楚就算了压根没这段配置而且下面也只有[mysql_cluster] 数据节点没有SQL节点 我操尼玛 SQL节点被你们吃了吗?就知道到处复制粘贴真尼玛鸡巴害死老子了。这个地方一定要配置好这两个配置节 [mysql_cluster] 和 [mysqld]。 以上就是所有的配置了,就这么简单就搞定了接下来我们来一个个的启动。
启动的顺序是 1:管理节点 2:数据节点 3:SQL节点 1: 192.168.220.102 打开命令行窗口,然后按照下面给的命令 一行一行的输。
cd "C:\Program Files\MySQL\MySQL Cluster 7.4\bin"
ndb_mgmd.exe --config-file="C:\Program Files\MySQL\MySQL Cluster 7.4\config.ini" --configdir="C:\Program Files\MySQL\MySQL Cluster 7.4"
上述命令执行成功后CMD会自动输出一段 MySQL Cluster Management Server mysql-5.6.24 ndb-7.4.6,我就不截图了麻烦。
执行完上面的命令后记住别关闭当前这个执行命令的窗口,然后从新打开一个CMD命令窗口。关掉的是SB 别问我为什么,因为老子被那些傻逼博文害惨了。 2:192.168.220.103或者192.168.220.104 打开命令行窗口,然后输入下面的命令。 cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndbd.exe --initial
执行成功以后CMD返回信息差不多是下面这样的,
2015-05-28 23:28:06 [ndbd] INFO -- Angel connected to '192.168.2.73:1186'
2015-05-28 23:28:06 [ndbd] INFO -- Angel allocated nodeid: 22
3:192.168.220.103或者192.168.220.104 打开命令行窗口,输入下面的命令。
cd "C:\Program Files\MySQL\MySQL Cluster 7.4\bin"
mysqld.exe --default-file="C:\Program Files\MySQL\MySQL Cluster 7.4\my.ini"
mysqld --install
net start mysql
记住哦一行一行的输入,第二行回车以后会有点慢千万别关掉CMD窗口。老子开始就以为是我弄错了卡死了然后关了他妈的结果前功尽弃从头来过而且还不知道错哪里。
最终成功后 CMD返回的内容差不多如下:
2015-05-28 23:29:02 0 [Note] mysqld.exe (mysqld 5.6.24-ndb-7.4.6-cluster-gpl) starting as process 2868 ...
Service successfully installed.
MySQL 服务正在启动 ..
MySQL 服务已经启动成功。
把192.168.220.103和192.168.220.104都设置好以后 然后切换到192.168.220.102 新开一个命令窗口千万别关闭之前正在运行的管理节点命令窗口不然你就是SB。
然后在新开的命令窗口下输入如下命令:
ndb_mgm.exe
show
记住还是一行一行的输入ndb_mgm.exe是一行 show也是一行。
最后成功的返回结果应该是下面这个样子的:
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=21 @192.168.220.103 (mysql-5.6.24 ndb-7.4.6, Nodegroup: 0, *)
id=22 @192.168.220.104 (mysql-5.6.24 ndb-7.4.6, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.220.102 (mysql-5.6.24 ndb-7.4.6)
[mysqld(API)] 2 node(s)
id=11 @192.168.220.103 (mysql-5.6.24 ndb-7.4.6)
id=12 @192.168.220.104 (mysql-5.6.24 ndb-7.4.6)
剩下的就是测试了,随便下载一个navicat 连接192.168.220.104 和 192.168.220.103 这两个 SQL节点,就和平常连接Mysql 一样的。然后自己玩 妈的下班回家了,写完都快2点了我靠。。。。。。。。 我只想说那些复制粘贴的麻烦看看是不是对的再贴行吗?把老子折腾死了你们这群小婊砸
Mysql Cluster 集群 windows版本的更多相关文章
- MySQL Cluster 集群部署
前言 此篇博客用以介绍 MySQL Cluster 集群部署方法 一.节点规划 序号 IP地址 节点名称 1 172.16.1.201 mysql-manage 2 172.16.1.202 mysq ...
- MySQL Cluster 集群
本文转载 http://www.cnblogs.com/gomysql/p/3664783.html MySQL Cluster是一个基于NDB Cluster存储引擎的完整的分布式数据库系统.不仅仅 ...
- 基于Docker的Mysql Cluster集群
参考 mysql-cluster镜像 https://medium.com/@ahmedamedy/mysql-clustering-with-docker-611dc28b8db7 使用Docker ...
- centos7 mysql cluster集群搭建基于docker
1.准备 mn:集群管理服务器用于管理集群的其他节点.我们可以从管理节点创建和配置集群上的新节点.重新启动.删除或备份节点. db2/db3:这是节点间同步和数据复制的过程发生的层. db4/db5: ...
- MySQL集群---②Windows平台搭建MySQL CLUSTER集群
原文:http://blog.csdn.net/mazhaojuan/article/details/42211857 本文将通过两台电脑来简单介绍一下Windows平台如何搭建MySQL集群. My ...
- Windows系统搭建Mysql Cluster集群
简单介绍一下MySQL集群涉及的三种节点: 管理节点(也可以称管理服务器)是整个集群环境的核心,类似于集群中起调度作用的枢纽,由它来负责管理其它节点(数据节点和SQL节点)的开启.关闭或重启某 ...
- MySQL Cluster 集群简介
简介 MySQL集群是一种在无共享架构(SNA,Share Nothing Architecture)系统里应用内存数据库集群的技术.这种无共享的架构可以使得系统使用低廉的硬件获取高的可扩展性. My ...
- 关于MySQL Cluster集群NoOfReplicas参数问题
摘自:http://www.itpub.net/thread-1845295-1-1.html 官方网站上说参数NoOfReplicas的值表示数据的备份份数,例如:NoOfReplicas=2,若在 ...
- MySQL 集群历史版本信息
MySQL 集群有两种命名方式,在Mysql5.1版本之前,MySQL 集群是以MySQL版本号命名:MySQL5.1(包括)之后开始以 mysql-mysql_server_version-ndb- ...
随机推荐
- Redmine开启服务
写了一个启动Redmine的开机脚本,redmine文件在/etc/init.d/下 #!/bin/sh ### BEGIN INIT INFO # Provides: Dean Chen # Req ...
- hdu 4775 Infinite Go(暴力)
pid=4775" target="_blank" style="">题目链接:hdu 4775 Infinite Go 题目大意:两个人下围棋 ...
- DropdownList的处理总结
创建一: List<SelectListItem> items = new List<SelectListItem>() { new SelectListItem(){Text ...
- hdu1281棋盘游戏
Problem Description 小希和Gardon在玩一个游戏:对一个N*M的棋盘,在格子里放尽量多的一些国际象棋里面的“车”,并且使得他们不能互相攻击,这当然很简单,但是Gardon限制了只 ...
- poj 1450 Gridland
Gridland Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- jQuery 动态绑定的点击事件
$(function () { , $_div = $('#test'); $('input[name=addbtn]').on('click', function () { $_div.append ...
- 修改已经提交到远端的git commit信息
有这么一种场景,就是以前没有设置用户名和邮箱,导致提交时git commit信息中用户信息不正确.这样的情况导致后来我们提交代码到git上面时因为身份验证错误,只有到 push 阶段了才发现提交不上去 ...
- mysqli连接数据库函数
<?php $mysqli=@new mysqli("localhost", "root", "123456", "xsph ...
- cordova开发中遇到的一些坑
# 外域的JS被禁止,修改meta标签 <meta http-equiv="Content-Security-Policy" content="default-sr ...
- Linux 计算某文件夹下的所有文件的md5值
使用find 命令 find /root -type f -print0 |xargs -0 md5sum >a.md5 校验的话 md5sum -c a.md5