• 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 FilesMySQLMySQL Cluster 7.3

    在VM1,VM2,VM3上的Windows 资源管理器中打开C:Program FilesMySQL,在此目录下新建文件夹MySQL Server 5.6,然后在新建的MySQL Server 5.6文件夹下新建mysql-cluster文件夹

    新建文件夹的路径分别为:C:Program FilesMySQLMySQL Server 5.6

    C:Program FilesMySQLMySQL Server 5.6mysql-cluster

    在VM1的Windows 资源管理器打开目录C:,创建MySQL目录,并在此目录下新建一个config.ini文件(完整目录为C:MySQLconfig.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 FilesMySQLMySQL Cluster 7.3data
    
    [ndbd]
    
    NodeId=21
    
    HostName=192.168.220.104
    
    DataDir=C:Program FilesMySQLMySQL Server 5.6mysql-cluster
    
    [ndbd]
    
    NodeId=22
    
    HostName=192.168.220.108
    
    DataDir=C:Program FilesMySQLMySQL Server 5.6mysql-cluster
    
    [mysqld]
    
    NodeId=11
    
    HostName=192.168.220.104
    
    [mysqld]
    
    NodeId=12
    
    HostName=192.168.220.108

    在VM1,VM2,VM3的资源管理器中打开目录C:Program FilesMySQLMySQL Cluster 7.3,并在此目录下新建一个my.ini文件

    [mysqld]
    
    character_set_server=utf8 
    
    basedir="C:Program FilesMySQLMySQL Cluster 7.3" 
    
    datadir="C:Program FilesMySQLMySQL Cluster 7.3data" 
    
    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 FilesMySQLMySQL Cluster 7.3in

    注意:多个路径用分号分隔

    配置文件主要参数介绍:

    [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 FilesMySQLMySQL Cluster 7.3in"
    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 FilesMySQLMySQL Cluster 7.3in"
    ndbd.exe --install=ndbd --initial  (--initial只有初次执行时需要)

    (注:ndbd 为数据节点windows服务名称)
    启动数据节点 net start ndbd

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

    在SQL节点(SQL1)机器上(VM2)中新开CMD窗口执行如下命令,启动SQL节点

    安装mysql sql节点

    cd "C:Program FilesMySQLMySQL Cluster 7.3in"

    mysqld.exe --default-file="C:Program FilesMySQLMySQL Cluster 7.3my.ini"

    mysqld –install

    net start mysql

    wpsBEF5.tmp

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

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

    安装myslq数据节点作为windows服务
    cd "C:Program FilesMySQLMySQL Cluster 7.3in"
    ndbd.exe --install=ndbd --initial(--initial为初次执行时需要,可选)
    启动数据节点 net start ndbd

    在SQL节点(SQL2)机器上(VM3)中新开CMD窗口执行如下命令,启动SQL节点

    cd "C:Program FilesMySQLMySQL Cluster 7.3in"

    mysqld.exe --default-file="C:Program FilesMySQLMySQL Cluster 7.3my.ini"

    mysqld –install

    net start mysql

    wpsBF06.tmp

    检查配置

    在管理节点(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

  • 相关阅读:
    02 make和目录结构
    05 UCI
    IE6下position:fixed不固定的解决办法
    php内存溢出
    MySQL计划任务(事件调度器)(Event Scheduler)
    PHP面向对象
    php学习笔记——12年2月16日开始不断更新
    Phpnow下配置Xdebug调试
    边学边用
    ASP时间格式化函数
  • 原文地址:https://www.cnblogs.com/suixinpeng/p/4603467.html
Copyright © 2020-2023  润新知