B\S备忘录26——windows下的mysql cluster搭建

来源:互联网 发布:北京久其软件 编辑:程序博客网 时间:2024/06/05 03:32

   说是搭建集群,由于只有一台电脑,所以只能在我的电脑上解说一下。

   在mysql cluster中存在三种节点,管理节点,数据节点,SQL节点。管理节点的作用是管理MySQL Cluster内的其他节点,如提供配置数据、启动并停止节点、运行备份等。由于这类节点负责管理其他节点的配置,应在启动其他节点之前首先启动这类节点。数据节点用于保存 Cluster的数据,简单来说就是数据的物理文件存放位置。SQL节点主要是用来给外界访问的。

   按照我理解的现状,我们的应用通过SQL节点来访问集群,并把数据提交给管理节点,而添加的数据是由管理节点来更新到数据节点。整个结构如图。


   嗯,差不多就这样吧,因为理解的也不是很深,理论部分就说这些了,然后就是怎么搭建这个集群了。

   搭建的工作还是比较简单的,毕竟Mysql已经把大部分的功能都做好了,我们只需要配置一些文件,然后把各个节点链接到管理节点就行了。

   首先来定义一下我们的各个节点的IP。

   管理节点:192.168.0.199

   数据节点A:192.168.0.200

   数据节点B:192.168.0.201

   SQL节点A:192.168.0.202

   SQL节点B:192.168.0.203

   然后解压我们在官网上下的Mysql Cluster压缩包。在每台电脑上解压,就解压到C盘吧,比较好写配置文件。在解压的文件夹中有一个Bin文件夹,在这个文件夹下面建立一个cluster-logs文件夹,用来保存集群的日志。建立一个config文件夹,用来存放配置文件。

   在这个config文件夹下开始建立文件,首先是一个my.ini,里面的代码是这样的,制定是集群读取的配置文件是哪一个

[mysql_cluster] # Options for management node process config-file=C:/mysql/bin/config/config.ini
   然后就是config.ini,这里配置的是管理节点的一些配置,还有可以连接到这个管理节点的各个节点IP
[ndbd default] # Options affecting ndbd processes on all data nodes: NoOfReplicas=2                      # Number of replicas 副本数量DataDir=C:/mysql/bin/cluster-data       # Directory for each data node's data files 每个数据节点的文件目录                                    # Forward slashes used in directory path,   /在路径中使用比\更好,这里的路径写法是正确的                                    # rather than backslashes. This is correct;                                     # see Important note in text DataMemory=80M    # Memory allocated to data storage 分配数据存储IndexMemory=18M   # Memory allocated to index storage 分配索引存储                  # For DataMemory and IndexMemory, we have used the 对于数据存储和索引存储大小,mysql有默认值,自从发现‘世界’数据库只占用了大约500kb                  # default values. Since the "world" database takes up                   # only about 500KB, this should be more than enough for 默认值是完全够用的                  # this example Cluster setup.[ndb_mgmd] # Management process options: HostName=192.168.24.199              # Hostname or IP address of management node 管理节点的主机名称或IP地址DataDir=C:/mysql/bin/cluster-logs   # Directory for management node log files 管理节点的日志存储地址[ndbd] # Options for data node "A": 数据节点A的设置项                             # (one [ndbd] section per data node) 一个[ndbd]标签代表一个数据节点HostName=192.168.24.200           # Hostname or IP addressDataDir= C:/data[ndbd] # Options for data node "B":HostName=192.168.24.201          # Hostname or IP address[mysqld] # SQL node A options: SQL节点A的设置项HostName=192.168.24.202           # Hostname or IP address[mysqld] # SQL node B options:HostName=192.168.24.203          # Hostname or IP address

   配置完成之后,就可以启动管理节点了。在cmd中运行

c:\mysql\bin\ndb_mgmd.exe --configdir=c:\mysql\bin\config --config-file=c:\mysql\bin\config\config.ini --ndb-nodeid=1 --reload –initial

   管理节点启动之后就可以把其他节点链接到管理节点上了,这个链接的顺序是有讲究的,先连数据节点,再连SQL节点。

   那么我们在200,201两台电脑上运行指令。让他们链接199的管理节点。

c:\mysql\bin\ndbd.exe --ndb-connectstring=192.168.24.199

   最后在202,203两台电脑上运行命令

c:\mysql\bin\mysqld.exe --ndbcluster --ndb-connectstring=192.168.24.199 --console

   这样就算执行了所有的链接了,之后我们可以在c:\mysql\bin\ndb_mgmd.exe中查看,打开这个文件,输入show然后回车,就能看到这种场景。毕竟没有5台电脑给我玩,只能盗个图了- -。


  

0 0