mysql怎么连接集群 mysql集群解决方案( 四 )


打开DOS命令行窗口(配置完系统path后,在再次打开新的命令行窗口),执行以下语句,让 MySQL 作为 Windows 服务运行:
mysqld.exe -install mysql
再在 Windows 服务管理界面里 , 配置 mysql 服务,手动启动(不要自动启动) 。
把 D:\mysql-cluster-gpl-noinstall-7.1.3-win32 下的某个备用的配置文件(例如my-small.ini)复制为 my.ini 文件 。
建立 D:\tmp 文件夹 。
四、配置SQL节点和数据节点:
在2台机器上 , 分别依次操作 。
建立文件夹 D:\data 。
编辑 NySQL 配置文件 D:\mysql-cluster-gpl-noinstall-7.1.3-win32\my.ini , 在 [mysqld] 节末尾加语句:
#SQL群集节点
ndbcluster
ndb-connectstring=10.0.0.201
有了 ndbcluster 语句,mysql 服务将作为群集的 SQL 节点启动 。mysqld.exe 命令带参数 –ndbcluster 运行是一样的效果 。
mysql 服务连接到数据节点的 2202 默认端口,或自动分配的别的可用端口 。
(问题:SQL节点如何获得数据节点的IP地址?是否通过连接管理节点 , 取得所有数据节点的IP地址的列表?)
这里的连接字符串的值在 MySQL 服务启动时使用,用于连接到管理节点 。
在末尾加语句:
#NDB集群节点
[mysql_cluster]
ndb-connectstring=10.0.0.201
注:好像以下形式也可:
[ndbd]
ndb-connectstring=10.0.0.201
这里的连接字符串的值在数据节点启动时使用,用于连接到管理节点 。
五,启动群集各服务器
启动顺序依次是:管理节点、数据节点、SQL节点 。
1,启动管理节点
在第一台服务器的DOS窗口,运行命令:
C:\ndb_mgmd.exe -f d:\mysql-cluster.conf\config.ini –configdir=d:\mysql-cluster
注:如果不带 –configdir=d:\mysql-cluster 参数,将默认为 C:\mysql\mysql-cluster 文件夹 。
屏幕显示:
C:\ndb_mgmd.exe -f d:\mysql-cluster.conf\config.ini –configdir=d:\mysql-cluster
2010-06-10 01:16:57 [MgmtSrvr] INFO — NDB Cluster Management Server. mysql-5.1.44 ndb-7.1.3
2010-06-10 01:16:57 [MgmtSrvr] INFO — Reading cluster configuration from ‘d:\mysql-cluster.conf\config.ini'
2010-06-10 01:16:57 [MgmtSrvr] INFO — Got initial configuration from ‘d:\mysql-cluster.conf\config.ini', will try to set it when all ndb_mgmd(s) started
2010-06-10 01:16:57 [MgmtSrvr] INFO — Mgmt server state: nodeid 1 reserved for ip 10.0.0.201, m_reserved_nodes 1.
2010-06-10 01:16:57 [MgmtSrvr] INFO — Id: 1, Command port: *:1186
==INITIAL==
2010-06-10 01:16:57 [MgmtSrvr] INFO — Starting initial configuration change
2010-06-10 01:16:57 [MgmtSrvr] INFO — Configuration 1 commited
2010-06-10 01:16:57 [MgmtSrvr] INFO — Config change completed! New generation: 1
==CONFIRMED==
2,启动数据节点
分别在2台服务器的DOS窗口运行命令 。
第一次 , 或初始化群集节点时,运行命令:
ndbd.exe –initial
初始化之后,只运行 ndbd.exe 即可 。若带参数 –initial 运行,将使正常运行的群集系统中 , 数据节点的数据全部丢失 。
数据节点依赖管理节点服务器,进行数据的自动复制和同步,使各个数据节点的数据保持一致,并在某个数据节点意外关闭又恢复后,进行数据的恢复重建 。
3 , 启动SQL节点
有了 ndbcluster 语句,启动 mysql 服务,就启动了SQL节点 。应在前2种节点启动后 , 分别在2台服务器上进行 。
六、群集管理
在所有的数据节点和SQL节点未启动之前,运行群集管理节点服务的客户端 ndb_mgm.exe,只能获得以下信息:
C:\ndb_mgm.exe
— NDB Cluster — Management Client –
ndb_mgm show

推荐阅读