设为首页 收藏本站
查看: 1108|回复: 0

Windows Server 2008R2配置MySQL Cluster

[复制链接]

尚未签到

发表于 2015-4-29 12:48:22 | 显示全部楼层 |阅读模式
目录




  • 配置环境
  • 相关知识
  • 配置过程

    • 配置
    • ini参数解释
    • 启动集群


  • 检查配置
  • 同步测试
  • 故障测试
  • 写在之后

配置环境
  VMware:(版本10.0.01)
  操作系统:Windows Server 2008 R2 Enterprise
  VM1:192.168.220.103 管理节点(MGM),数据节点(NDBD1),SQL节点(SQL1)
  VM2:192.168.220.104     数据节点(NDBD2),SQL节点(SQL2)
  MySQL Cluster版本:7.3.7 (MSI Installer)  下载地址:http://dev.mysql.com/downloads/cluster/
  测试工具:Navicate for MySQL
  

相关知识

  简介:
  MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署“内存中”数据库的 Cluster 。通过无共享体系结构,系统能够使用廉价的硬件,而且对软硬件无特殊要求。此外,由于每个组件有自己的内存和磁盘,不存在单点故障。
  MySQL Cluster 由一组计算机构成,每台计算机上均运行着多种进程,包括MySQL服务器,NDB Cluster 的数据节点,管理服务器,以及(可能)专门的数据访问程序
  
  特点:  http://www.mysql.com/products/cluster/features.html
  
  三种节点:
  管理节点:用于管理集群共它节点; 守护进程ndb_mgmd
  数据节点:用于保存集群的数据; 守护进程ndbd
  SQL节点:用于连接数据节点;守护进程mysqld
  
  详情请参考:参考手册中MySQL Cluster章节


配置过程


  • 在VM1和VM2上安装MySQL Cluster(mysql-cluster-gpl-7.3.7-winx64)
  选择typical安装,安装目录均为:C:\Program Files\MySQL\MySQL Cluster 7.3


  • 在VM1和VM2上的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:\Program Files\MySQL\MySQL Cluster 7.3,并在此目录下新建一个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.103
DataDir=C:\Program Files\MySQL\MySQL Server 5.6\mysql-cluster
[ndbd]
NodeId=22
HostName=192.168.220.104
DataDir=C:\Program Files\MySQL\MySQL Server 5.6\mysql-cluster
[mysqld]
NodeId=11
HostName=192.168.220.103
[mysqld]
NodeId=12
HostName=192.168.220.104

  • 在VM1和VM2的资源管理器中打开目录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
ndbcluster
ndb-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窗口执行如下命令,启动管理节点



cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndb_mgmd.exe --config-file="C:\Program Files\MySQL\MySQL Cluster 7.3\config.ini" --configdir="C:\Program Files\MySQL\MySQL Cluster 7.3"  
DSC0000.png


   注意:warning信息不影响,两台机器配置管理节点和数据节点在一台机器上的原因,并不会引起集群失败


  • 在数据节点(NDBD1)机器上(VM1)中新打开CMD窗口执行如下命令,启动数据节点



cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndbd.exe --initial            
DSC0001.png


   注意:--initial只有初次执行需要,以后执行ndbd.exe就可以(参考手册里的意思应该是当需要清理集群文件时才使用,所以这个参数应该要慎用或者提前备份)


  • 在SQL节点(SQL1)机器上(VM1)中新开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
DSC0002.png


  注意:执行mysqld --install 你可以在计算机的服务器看到名为“MySQL”的服务,在执行net start mysql,在服务中可以看到MySQL服务为“启动”状态


  • 在数据节点(NDBD2)机器上(VM2)中新打开CMD窗口执行如下命令,启动数据节点



cd "C:\Program Files\MySQL\MySQL Cluster 7.3\bin"
ndbd.exe
DSC0003.png



  • 在SQL节点(SQL2)机器上(VM2)中新开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
DSC0004.png

  如上图状态,表示安装成功!

同步测试


  • 在VM1和VM2上安装Navicat for MySQL(安装步骤省略)
  • 在VM1和VM2上打开Navicat for MySQL并新建连接(示例建立连接分别为:192.168.220.103和192.168.220.104)  安装后默认用户名为root,没有密码
  • 在192.168.220.103中新建数据库wilson_mysqlcluster_test,在192.168.220.104中查看

DSC0005.png DSC0006.png

    发现192.168.220.104中也出现wilson_mysqlcluster_test


  • 在192.168.220.104中的wilson_mysqlcluster中建一个tb_test表,注意引擎选择“ndbcluster”,在192.168.220.103中可以看到也会有tb_test表出现

DSC0007.png



  • 测试在192.168.220.103或192.168.220.104中增、删、改操作,两个数据库都会同步

故障测试


  • 在VM2中停止SQL节点,在192.168.220.103上插入一条数据(原本有2条数据),再启动VM2上的SQL节点,看是否能正常同步
  1.在VM2中CMD窗口执行如下命令停止MySQL服务



net stop msyql
DSC0008.png

  2.在192.168.220.103中插ID为3的数据后,执行如下命令,再次启动VM2中的MySQL服务,查看192.168.220.104中数据是否完整



net start mysql
DSC0009.png

  测试结果如图:得到完整数据
  
  其它测试就不一一列举了

写在之后
  配置前仔细看了MySQL参考文件MySQL Cluster章节
  MySQL Cluster配置过程还是比较容易出错,配置过程中大小错误遇到非常多(目录、SQL节点not connected、MYSQL服务无法启动、数据无法同步等等),根据CMD上错误和日志文件查找对应的解决方法
  注意启动顺序会少遇到很多错误:管理节点--->数据节点--->SQL节点
  生产环境建议用至少3台服务器去配置,需要修改一下config.ini文件,配置过程与两台没什么差别
  
  主要参考:
  MySQL_5.5中文参考手册
  Windows 环境下配置 MySQL Cluster

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-61941-1-1.html 上篇帖子: 无网络环境,在Windows Server 2008 R2和SQL Server 2008R2环境安装SharePoint2013 下篇帖子: windows 2008无线网络"没有正确配置为使用IP协议" 错误解决办法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表