Windows Server 2008R2配置MySQL Cluster并将管理节点和数据节点配置成windows服务
说明:将mysql的管理节点和数据节点配置成windows服务是为了防止有人手误关闭管理节点或数据节点的dos命令窗口,管理节点或数据节点的命令窗口误关闭可能会造成mysql某台或某几台mysql不能被访问,注册成windows服务自动启动更安全可靠。
目录
操作系统:Windows Server 2008 R2 Enterprise
VM1:192.168.220.103 管理节点(MGM),
VM2:192.168.220.104数据节点(NDBD1),SQL节点(SQL1)
VM3:192.168.220.108 数据节点(NDBD2),SQL节点(SQL2)
MySQL Cluster版本:7.3.7 (MSI Installer)
相关知识
简介:
MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署“内存中”数据库的 Cluster 。通过无共享体系结构,系统能够使用廉价的硬件,而且对软硬件无特殊要求。此外,由于每个组件有自己的内存和磁盘,不存在单点故障。
MySQL Cluster 由一组计算机构成,每台计算机上均运行着多种进程,包括MySQL服务器,NDB Cluster 的数据节点,管理服务器,以及(可能)专门的数据访问程序
三种节点:
管理节点:用于管理集群共它节点; 守护进程ndb_mgmd
数据节点:用于保存集群的数据; 守护进程ndbd
SQL节点:用于连接数据节点;守护进程mysqld
详情请参考:参考手册中MySQL Cluster章节
配置过程
在VM1,VM2,VM3上安装MySQL Cluster(mysql-cluster-gpl-7.3.7-winx64)
选择typical安装,安装目录均为:C:\Program Files\MySQL\MySQL Cluster 7.3
在VM1,VM2,VM3上的Windows 资源管理器中打开C:\Program Files\MySQL,在此目录下新建文件夹MySQL Server 5.6,然后在新建的MySQL Server 5.6文件夹下新建mysql-cluster文件夹
新建文件夹的路径分别为:C:\Program Files\MySQL\MySQL Server 5.6
C:\Program Files\MySQL\MySQL Server 5.6\mysql-cluster
在VM1的Windows 资源管理器打开目录C:\,创建MySQL目录,并在此目录下新建一个config.ini文件(完整目录为C:\MySQL\config.ini)
[ndbd default] NoOfReplicas=2 MaxNoOfTables=1024 MaxNoOfUniqueHashIndexes=1024 MaxNoOfOrderedIndexes=1024 MaxNoOfAttributes=10000 [ndb_mgmd] NodeId=1 HostName=192.168.220.103 DataDir=C:\Program Files\MySQL\MySQL Cluster 7.3\data [ndbd] NodeId=21 HostName=192.168.220.104 DataDir=C:\Program Files\MySQL\MySQL Server 5.6\mysql-cluster [ndbd] NodeId=22 HostName=192.168.220.108 DataDir=C:\Program Files\MySQL\MySQL Server 5.6\mysql-cluster [mysqld] NodeId=11 HostName=192.168.220.104 [mysqld] NodeId=12 HostName=192.168.220.108
在VM1,VM2,VM3的资源管理器中打开目录C:\Program Files\MySQL\MySQL Cluster 7.3,并在此目录下新建一个my.ini文件
[mysqld] character_set_server=utf8 basedir="C:\Program Files\MySQL\MySQL Cluster 7.3" datadir="C:\Program Files\MySQL\MySQL Cluster 7.3\data" sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES ndbclusterndb-connectstring=192.168.220.103 explicit_defaults_for_timestamp=true [mysql_cluster] ndb-connectstring=192.168.220.103
在VM1和VM2中设置环境变量(非必需,文中并未用到,都会CD转到到相应目录去执行命令)
计算机右键属性 (或者 控制面板\系统和安全\系统)--->高级系统配置--->"高级"选择卡--->环境变量--->系统变量中找到Path--->编辑--->加上C:\Program Files\MySQL\MySQL Cluster 7.3\bin
注意:多个路径用分号分隔
配置文件主要参数介绍:
[NDBD]:定义了集群的数据节点
[MYSQLD]:定义了集群的MySQL服务器节点
[MGM]或[NDB_MGMD]:定义了集群的管理服务器节点
[NDB_MGMD]Id:节点唯一的标识
[NDBD]NoOfReplicas:全局参数仅能在[NDBD DEFAULT]中设置,它定义了集群中每个表保存的副本数。该参数还指定了节点组的大小。节点组指的是保存相同信息的节点集合
[NDBD]DataDir:该参数指定了存放跟踪文件、日志文件、 pid文件以及错误日志的目录
[MYSQLD]basedir:使用指定目录作为根目录
[MYSQLD]datadir:使用指定目录读取数据库文件
在管理节点(MGM)机器上(VM1)中打开CMD窗口执行如下命令,启动管理节点
安装管理节点作为windows服务
先跳到mysql安装路径的bin目录cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndb_mgmd.exe --install=ndb_mgmd --ndb-mgmd-host=192.168.220.103
--ndb-nodeid=1 --config-file="C:\\MySQL\\config.ini"
参数说明:
--ndb-mgmd-host为管理节点ip
--ndb-nodeid为管理节点上配置文件config.ini中管理节点的nodeid
--install=ndb_mgmd,其中ndb_mgmd为windows服务名称
注意:--config-file中的路径中必须用\\,并且路径中不允许包含空格
启动管理节点 net start ndb_mgmd
在数据节点(NDBD1)机器上(VM2)中新打开CMD窗口执行如下命令,启动数据节点
安装myslq数据节点作为windows服务
cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndbd.exe --install=ndbd --initial (--initial只有初次执行时需要)
(注:ndbd 为数据节点windows服务名称)
启动数据节点 net start ndbd
注意:--initial只有初次执行需要,以后执行ndbd.exe就可以(参考手册里的意思应该是当需要清理集群文件时才使用,所以这个参数应该要慎用或者提前备份)
在SQL节点(SQL1)机器上(VM2)中新开CMD窗口执行如下命令,启动SQL节点
安装mysql sql节点
cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
mysqld.exe --default-file="C:\Program Files\MySQL\MySQL Cluster 7.3\my.ini"
mysqld –install
net start mysql
注意:执行mysqld --install 你可以在计算机的服务器看到名为“MySQL”的服务,在执行net start mysql,在服务中可以看到MySQL服务为“启动”状态
在数据节点(NDBD2)机器上(VM3)中新打开CMD窗口执行如下命令,启动数据节点
安装myslq数据节点作为windows服务
cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndbd.exe --install=ndbd --initial(--initial为初次执行时需要,可选)
启动数据节点 net start ndbd
在SQL节点(SQL2)机器上(VM3)中新开CMD窗口执行如下命令,启动SQL节点
cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
mysqld.exe --default-file="C:\Program Files\MySQL\MySQL Cluster 7.3\my.ini"
mysqld –install
net start mysql
检查配置
在管理节点(MGM)机器上(VM1)中打开CMD窗口执行如下命令
ndb_mgm.exe
然后输入show
看到的结果类似下面这样:
管理节点:
192.168.220.103
数据节点
192.168.220.104
192.168.220.108
SQL节点
192.168.220.104
192.168.220.108
在104机器的mysql上创建测试数据库test123和表t1,然后在登陆108机器上的mysql,查看数据库test123和表t1是否已同步过来,若已同步,说明mysql cluster搭建成功。
参考文章:
http://www.cnblogs.com/zhongweiv/p/Windows_Server_2008_R2_MySQL_Cluster.html
Windows Server 2008R2配置MySQL Cluster并将管理节点和数据节点配置成windows服务的更多相关文章
- Windows Server 2008R2配置MySQL Cluster
目录 配置环境 相关知识 配置过程 配置 ini参数解释 启动集群 检查配置 同步测试 故障测试 写在之后 配置环境 VMware:(版本10.0.01) 操作系统:Windows Server 20 ...
- windows server服务器上mysql远程连接失败的坑
windows server服务器上mysql远程连接失败的坑 背景:趁这阿里云活动,和朋友合伙买了个服务器,最坑的是没想到他买的是windows Server的,反正便宜,将就着用吧,自己装好了wa ...
- Eucalyptus-利用镜像启动一个Windows Server 2008r2实例
1.前言 使用kvm制作Eucalyptus镜像(Windows Server 2008r2为例)——http://www.cnblogs.com/gis-luq/p/3990792.html 上一篇 ...
- 使用kvm制作Eucalyptus镜像(Windows Server 2008r2为例)
1.前言 Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) ...
- 篇章一:SVN服务搭建【基于Windows server 2008R2 + Windows7】
1.软件下载 1.1 软件介绍 Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站 ...
- 关于vs2012、tfs2012、windows server 2008r2一些记录
windows server 2008r2安装在虚拟机中,装有tfs2012.sql server 2012. 物理机装有vs2012 1.用vs2012连接tfs时候,会让输入一个有效用户.输入的是 ...
- 服务器-华为RH5885 V3-安装Windows Server 2008R2后设备管理器中存在大量的感叹号,并且无法识别网络适配器,没有网卡
问题描述:用引导盘安装Windows Server 2008R2后,出现如题的情况. 根源:驱动未安装. 解决方法: 1.下载驱动:https://support.huawei.com/enterpr ...
- 遗忘Windows Server 2008R2密码的处理方法
遗忘Windows Server 2008R2的处理方法 有的时候,我们会由于各种原因忘掉了服务器密码,比如服务器太多,太杂什么的,或直接是被人黑掉了,这个时候我们想要登录,发现我们已经没有办法了,其 ...
- [转帖]SQLSERVER2008R2 将于2019.7.9 结束支持服务 Windows server 2008r2 将于 2020.1.14 结束支持
来源: https://cloudblogs.microsoft.com/sqlserver/2018/07/12/sql-server-2008-end-of-support-is-the-firs ...
随机推荐
- .NET使用ICSharpCode.SharpZipLib压缩/解压文件
SharpZipLib是国外开源加压解压库,可以方便的对文件进行加压/解压 1.下载ICSharpCode.SharpZipLib.dll,并复制到bin目录下 http://www.icsharpc ...
- MySQL的存储引擎整理
01.MyISAM MySQL 5.0 以前的默认存储引擎.MyISAM 不支持事务.也不支持外键,其优势是访问的速度快,对事务完整性没有要求或者以SELECT.INSERT 为主的应用基本上都可以使 ...
- 【风马一族_xml】Schema--- xml的约束技术
Schema 是xml的约束技术,出现的目的是为了替代dtd 本身也是一个xml,非常方便使用xml的解析引擎进行解析 对名称空间有非常好的支持 支持更多的数据类型,并且支持用户自定义数据类型 可以进 ...
- [转]10分钟入门python
本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为Rocrocket Wu. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体 ...
- 网络HTTP请求状态详解
HTTP状态码大全 完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1l ...
- windows 8.1 MessageDialog
private Popup p; private void Button_Click(object sender, RoutedEventArgs e) { p=new Popup(); Denglu ...
- 软件工程 speedsnail 冲刺9
20150313 完成任务:为周五检查做了相关准备,包括稳定性测试,分辨率测试: 遇到问题: 问题1 进入关卡的开始蜗牛会跳一段距离 解决1 没有解决 明日任务: 冲刺结束
- PHP和AJAX笔记汇总
AJAX简介AJAX = Asynchronous JavaScript And XML(异步 JavaScript 及 XML)AJAX 是 Asynchronous JavaScript And ...
- div左右布局
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <!DOCTYPE html> <html> <head> ...
- php设计模式之Proxy(代理模式)和Facade(外观)设计模式
Proxy(代理模式)和Facade(外观)设计模式它们均为更复杂的功能提供抽象化的概念,但这两种实现抽象化的过程大不相同 Proxy案例中,所有的方法和成员变量都来自于目标对象,必要时,该代理能够对 ...