部署方法网上很多,以下是我的实践过程,供大家参考。

1. 硬件:3台虚拟机,全是windows 10 x64

2. 网络架构:

  管理节点:192.168.37.128
  数据节点 / SQL节点: 192.168.37.129 / 192.168.37.130 (同一台机器同时存在数据节点与sql节点)

3. 安装

  下载 mysql cluster : https://dev.mysql.com/downloads/cluster/

  ( 这里有个镜像: http://mirrors.sohu.com/mysql/MySQL-Cluster-7.5/ )

  我这里下载的是官网的 mysql-cluster-gpl-7.5.6-winx64.zip

4. 配置

  4.1 管理节点: 在 192.168.37.128 的机子上创建以下目录(一定是C盘),并在 bin 目录下创建下以4个文件 , cluster-logs及mysql-cluster 是个空文件夹

  

  my.ini 内容如下

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

  config.ini 内容如下

 1 [NDBD DEFAULT]
  #1: 表示只有一份数据,但是分成n块分别存储在n个数据节点上。2:数据被分成n/2块,每块数据都有2个备份,这样即使有任意一个节点发生故障,只要它的备份节点正常,系统就可以正常运行
2 NoOfReplicas=2
3 DataDir=D:/mysqlCluster/datanode/mysql/bin/cluster-data
4 DataMemory=80M
5 IndexMemory=18M
6
7 [MYSQLD DEFAULT]
8 [NDB_MGMD DEFAULT]
9 [TCP DEFAULT]
10
11 [NDB_MGMD]
12 Nodeid=1
13 #管理节点服务器
14 HostName=192.168.37.128
15 # Storage Engines
16 DataDir=C:/mysql/cluster-logs
17
18 [NDBD]
19 Nodeid=2
20 #MySQL集群db1的IP地址
21 HostName=192.168.37.130
22
23 [NDBD]
24 Nodeid=3
25 #MySQL集群db2的IP地址
26 HostName=192.168.37.129
27
28 [MYSQLD]
29 Nodeid=4
30 HostName=192.168.37.130
31
32 [MYSQLD]
33 Nodeid=5
34 HostName=192.168.37.129
35 [MYSQLD]
36 [MYSQLD]

  ndb_mgm.exe 及 ndb_mgmd.exe是从下载的 mysql cluster包里面 copy , 我的是 mysql-cluster-gpl-7.5.6-winx64\bin 目录里面

  4.2 数据节点 : 在192.168.37.129 机子上创建目录 D:\mysqlCluster\datanode\mysql\bin\cluster-data , 并在 D:\mysqlCluster\datanode\mysql 新建 my.ini , 在 D:\mysqlCluster\datanode\mysql\bin 复制 ndbd.exe

   

  my.ini 内容如下

1 [mysql_cluster]
2 # Options for data node process:
3 ndb-connectstring=192.168.37.128

  ndbd.exe 是从下载的 mysql cluster包里面 copy , 我的是 mysql-cluster-gpl-7.5.6-winx64\bin 目录里面。

  4.3 sql 节点: 在192.168.37.129 机子上创建目录 D:\mysqlCluster\sqlnode\ , 复制 mysql-cluster-gpl-7.5.6-winx64 到 sqlnode 下 , 重命名 mysql-cluster-gpl-7.5.6-winx64 --> mysql , 创建 data 文件夹和my.ini

  my.ini 内容如下

1 [mysqld]
2 # Options for mysqld process:
3 ndbcluster # run NDB storage engine
4 ndb-connectstring=192.168.37.128 # location of management server

  4.3.1  注册 mysql 服务 , 注册成功在 windows 的服务里面多了一个 MySQL 的服务 (若服务已存在,请删除 mysqld --remove mysql )

(以上命令必须以管理员身份运行。先初始化data目录:以前5.6版本自带data目录,不需要这一步!如果没有这一步会无法启动mysql服务,报错MYSQL 服务无法启动,在初始化之前,务必将data目录底下的文件删除掉。

mysqld --initialize-insecure : 自动生成无密码的root用户;

mysqld --initialize : 是自动生成随机密码用户;

)

因 192.168.37.130 与 192.168.37.129 配置一样, 所以可以 D:\mysqlCluster 复制到 192.168.37.130 机子上(注册服务要再做一次)

5. 启动 : 启动必须安顺序,管理节点 --> 数据节点  --> sql 节点

  5.1 管理节点:

      cd c:\mysql\bin

      ndb_mgmd -f c:\mysql\bin\config.ini --configdir=c:\mysql\mysql-cluster

      (重新加载 config.ini 可加 --reload 参数)

      

  5.2 数据节点:  192.168.37.129 / 192.168.37.130

      

  5.3 sql 节点: 192.168.37.129 / 192.168.37.130

      管理节点及数据节点正常开启后,只要sql节点的 MySQL 服务开启就能连上,若没有开启,手动开启就可以连上

      

全部运行完后可在 管理节点的机子上查看连接状态,返加 192.168.37.128

      

6. 测试

  在192.168.37.129的机子上,打开DOS,进入 D:\mysqlCluster\sqlnode\mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码,直接回车(mysqld --initialize-insecure : 自动生成无密码的root用户)

  1. create database test_db;

  2. use test_db;

  3. 创建表 ( 注:ENGINE=ndbcluster )

CREATE TABLE `country` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '国家id',
`country_code` varchar(20) NOT NULL COMMENT '国家代码',
`name` varchar(20) NOT NULL COMMENT '国家名称',
PRIMARY KEY (`id`),
UNIQUE KEY `id_UNIQUE` (`id`),
UNIQUE KEY `country_code_UNIQUE` (`country_code`),
UNIQUE KEY `name_UNIQUE` (`name`)
) ENGINE=ndbcluster DEFAULT CHARSET=utf8 COMMENT='国家';

  4. 向表插入数据

insert into country(country_code,name) values("003","EN");

  5. 到另一台 sql节点(192.168.37.130) 查看数据

select * from country;

  

Mysql Cluster7.5.6 windows10 部署安装的更多相关文章

  1. [置顶] MySQL Cluster初步学习资料整理--安装部署新特性性能测试等

    1.1 mysql-cluster简介 简单的说,MySQLCluster实际上是在无共享存储设备的情况下实现的一种完全分布式数据库系统,其主要通过NDBCluster(简称NDB)存储引擎来实现. ...

  2. windows10上安装mysql详细图文教程

    在windows10上安装mysql详细图文教程   这篇文章主要介绍了在windows10上安装mysql详细图文教程,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧 环境:windw ...

  3. windows10上安装mysql(详细步骤)

    2016年09月06日 08:09:34 阅读数:46198 环境:windwos 10(1511) 64bit.mysql 5.7.14 时间:2016年9月5日 一.下载mysql 1. 在浏览器 ...

  4. mysql监控利器mysqlmtop部署安装

    MySQLMTOP是一个由Python+PHP开发的MySQL企业级监控系统.系统由Python实现多进程数据采集和告警,PHP实现WEB展示和管理.最重要是MySQL服务器无需安装任何Agent,只 ...

  5. windows10上安装mysql

    环境:windwos 10(1511) 64bit.mysql 5.7.14 一.下载mysql 1. 在浏览器里打开mysql的官网http://www.mysql.com/ 2. 进入页面顶部的& ...

  6. Windows10下安装解压版MySQL教程

    MySQL安装分为安装版和解压版,安装版主要是由一个exe程序式安装,有界面鼠标点击安装即可,小白建议使用安装版安装mysql,相比较与安装版,解压版安装更"纯净",没有多余的东西 ...

  7. Docker+Redis镜像的原理以及部署安装(超详解附截图)

    文章来源:公众号-智能化IT系统. 一. DOCKER介绍 Docker简介 (1)Docker 是一个开源的应用容器引擎,基于 Go 语言,并遵从Apache2.0协议开源. (2)Docker 可 ...

  8. 单机多实例mysq 8.0l部署安装

    单机多实例mysql部署安装 目的需求 在单台虚拟机部署部署多实例mysql,用于配置mysql replication,MHA等. 思路 多实例安装mysql可以参考<源编译MySQL8.0的 ...

  9. MySQL高可用方案--MHA部署及故障转移

    架构设计及必要配置 主机环境 IP                 主机名             担任角色 192.168.192.128  node_master    MySQL-Master| ...

随机推荐

  1. PC微信[多开+免扫码+防撤回撤回提示+转存语音+自动收款+远程命令]

    PC端微信玩出了新花样,主要技术为Hook技术 有兴趣的小伙伴可以去了解下hook钩子技术 版本介绍: 增加转存语音到MP3(保存你重要的语音数据) 增加表图转存; 增加自动收转账和自动回复; 增加远 ...

  2. vue functional函数式组件

    第1种写法 test.vue <template functional> <div class="test"> {{props.test.name}} &l ...

  3. P4317 花神的数论题,关于luogu题解粉兔做法的理解

    link 题意 设 \(\text{sum}(i)\) 表示 \(i\) 的二进制表示中 \(1\) 的个数.给出一个正整数 \(N\) ,求 \(\prod_{i=1}^{N}\text{sum}( ...

  4. 安卓基于谷歌串口api进行串口开发

    准备材料 AndroidStudio 谷歌android-serialport-api 前情提要 网上提供很多基于c语言对安卓串口开发,有jni.cmake等等,不过都太高深,谷歌提供的api已经可以 ...

  5. 如何写好PPT,什么样的PPT容易被人理解记住

    PPT一般是用于讲解性的行为而存在,那如果写好PPT呢?如果写好,这个完全要取决于你所面向的目标读者,是用于学术行为呢?还是用于商业行为.面对不同的目标群体,有不同的策略.但是无论面向群体是谁我们都有 ...

  6. js中数组、字符串、日期、数学API方法一览

    以下内容摘选自 http://www.w3school.com.cn/jsref/jsref_obj_array.asp 点击方法新窗口打开详解 数组: 方法 描述 concat() 连接两个或更多的 ...

  7. Jmeter(4)断言

    Jmeter添加断言,检查测试中得到的响应数据是否符合预期.以下介绍下响应断言,JSON断言 一.响应断言 1.创建测试计划: 添加线程组->添加取样器->添加察看结果树,运行后可查看接口 ...

  8. Mysql8.0新特性【详细版本】

    1.  账户与安全 用户创建与授权 之前:创建用户并授权 1 grant all privileges on *.* to 'myuser'@'%' identified by '3edc#EDC'; ...

  9. torch中squeeze与unsqueeze用法

    import torch torch中的squeeze与unsqueeze作用是去除/添加维度为1的行 例如,a=torch.randn(2,3) 那么b=a.unsqueeze(0),b为(1,2, ...

  10. zookeeper集群&伪集群模式部署

    1.什么是单机部署 一台服务器上面部署一个单机版本的zookeeper服务,用于提供服务. 2.什么是集群部署? 集群部署就是多台服务器上面各部署单独的一个zookeeper服务,然后组建一个集群 3 ...