您当前的位置: 首页 > 数据库教程 > MySQL教程 > Windows环境下配置MySQL Cluster

Windows环境下配置MySQL Cluster

作者:不详 来源:网络 发布时间: 2014-07-17 09:51 点击:
一、准备工作 首先得准备好硬件设施、我这里是3台机器在做群集、结构如下: 管理节点(MGM) 172.16.0.162(db1) SQL节点1(SQL1) 172.16.0.161(db2) SQL节点2(SQL2) 172.16.0.202(db3) 数据节点1(NDBD1) 172.16.0.161(db4) 数据节点2(NDBD2) 172.16.0.202(db4) 这个硬件搞

Windows环境下配置MySQL Cluster

  一、准备工作

  首先得准备好硬件设施、我这里是3台机器在做群集、结构如下:

  管理节点(MGM) 172.16.0.162(db1)

  SQL节点1(SQL1) 172.16.0.161(db2)

  SQL节点2(SQL2) 172.16.0.202(db3)

  数据节点1(NDBD1) 172.16.0.161(db4)

  数据节点2(NDBD2) 172.16.0.202(db4)

  这个硬件搞定了、现在搞软件

  最好下载7以上的版本、因为性能好嘛,7.2这个版本的新特性上介绍说是:自适应查询本地化(AQL) 复杂连接速度提高70多倍。当然到底是不是这样我没有测试过不清楚。

  二、安装软件

  解压mysql-cluster-gpl-7.2.9-win32.zip包

  Management node的安装配置。

  Management node一定要安装在C盘下,并且是以下的目录(这是在运行此节点时报错,说找不到相对应的目录)。在IP为172.16.0.162的机子上

  生成c:/mysql/bin、C:/mysql/mysql-cluster(第一次启动后在这个文件夹会生成类似ndb_1_config.bin.1的文件,好像是为了以后启动加载的配置)

  和c:/mysql/bin/cluster-logs目录,在下载解压的文件目录mysql/bin中将ndb_mgmd.exe和ndb_mgm.exe复制到172.16.0.162的c:/mysql/bin目录下。

  在172.16.0.162的c:/mysql/bin下生成两个文件,my.ini和config.ini。

  my.ini的内容为:

  [plain]view plaincopyprint?

  [mysql_cluster]

  # Options for management node process

  config-file=C:/mysql/bin/config.ini

  [mysql_cluster] # Options for management node process config-file=C:/mysql/bin/config.ini

  config.ini的内容:(注:ID不能从0开始,必须大于0)

  [html]view plaincopyprint?

  [NDBD DEFAULT]

  NoOfReplicas=2

  DataDir=D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data

  DataMemory=80M

  IndexMemory=18M

  [MYSQLD DEFAULT]

  [NDB_MGMD DEFAULT]

  [TCP DEFAULT]

  [NDB_MGMD]

  ID=1

  HostName=172.16.0.162 #管理节点服务器

  # Storage Engines

  DataDir=C:/mysql/bin/cluster-logs

  [NDBD]

  ID=2

  HostName=172.16.0.161 #MySQL集群db1的IP地址

  #DataDir= D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data #如果不存在就创建一个

  [NDBD]

  ID=3

  HostName=172.16.0.202 #MySQL集群db2的IP地址

  #DataDir= D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data #如果不存在就创建一个

  [MYSQLD]

  ID=4

  HostName=172.16.0.161

  [MYSQLD]

  ID=5

  HostName=172.16.0.202

  [NDBD DEFAULT]NoOfReplicas=2DataDir=D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-dataDataMemory=80MIndexMemory=18M[MYSQLD DEFAULT][NDB_MGMD DEFAULT][TCP DEFAULT][NDB_MGMD]ID=1HostName=172.16.0.162 #管理节点服务器# Storage EnginesDataDir=C:/mysql/bin/cluster-logs[NDBD]ID=2HostName=172.16.0.161 #MySQL集群db1的IP地址#DataDir= D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data #如果不存在就创建一个[NDBD]ID=3HostName=172.16.0.202 #MySQL集群db2的IP地址#DataDir= D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data #如果不存在就创建一个[MYSQLD]ID=4HostName=172.16.0.161[MYSQLD]ID=5HostName=172.16.0.202

  Data nodes的安装配置

  在IP为172.16.0.161 的机子上生成D:/Program Files/mysqlcluster/datanode/mysql/bin、D:/Program Files/mysqlcluster/datanode/mysql/cluster-data、

  D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data.在下载的的解压文件夹/bin中将ndbd.exe复制到

  172.16.0.161 机子的D:/Program Files/mysqlcluster/datanode/mysql /bin目录下,

  并在D:/Program Files/mysqlcluster/datanode/mysql/bin目录下生成my.ini文件,文件的内容为:

  [html]view plaincopyprint?

  [mysql_cluster]

  # Options for data node process:

  ndb-connectstring=172.16.0.162 # location of management server

  [mysql_cluster] # Options for data node process:ndb-connectstring=172.16.0.162 # location of management server 同理在172.16.0.202机子上配置相同的配置,也可以直接复制到172.16.0.202机子上。

  SQL node的安装配置

  在IP为172.16.0.161的机子上生成D:/Program Files/mysqlcluster/sqlnode目录,将下载的解压文件夹直接整个复制到D:/ProgramFiles/mysqlcluster/sqlnode/mysql目录下,在D:/ProgramFiles/mysqlcluster/sqlnode/mysql下生成my.ini文件,文件内容为:

  [html]view plaincopyprint?

  [html]view plaincopyprint?

  [mysqld]

  # Options for mysqld process:ndbcluster

  [mysqld] # Options for mysqld process:ndbcluster

  [html]view plaincopyprint?

  # run NDB storage engine

  ndb-connectstring=172.16.0.154

  # location of management server

  # run NDB storage engine ndb-connectstring=172.16.0.154 # location of management server同理,将D:/Program Files/mysqlcluster/sqlnode整个文件夹复制到172.16.0.202机子的相同目录下。

  三、启动集群

  启动各个节点是有顺序的,先是Management node,然后是Data nodes,最后是SQL nodes。

  a、启动Management node在172.16.0.162机子下进入命令行,转到c:/mysql/bin目录下,输入:

  ndb_mgmd -f config.ini

  (

  如果报如下错误:MySQL Cluster Management Server mysql-5.5.28 ndb-7.2.9

  2013-05-03 10:13:10 [MgmtSrvr] INFO -- The default config directory 'C:/Prog

  ram Files/MySQL/MySQL Server 5.5/mysql-cluster' does not exist. Trying to create

  it...

  Failed to create directory 'C:/Program Files/MySQL/MySQL Server 5.5/mysql-cluste

  r', error: 3

  2013-05-03 10:13:10 [MgmtSrvr] ERROR -- Could not create directory 'C:/Progra

  m Files/MySQL/MySQL Server 5.5/mysql-cluster'. Either create it manually or spec

  ify a different directory with --configdir=

  则在创建如下文件夹:C:Program FilesMySQLMySQL Server 5.5

  )

  b、启动Data node

  在172.16.0.161机子下进入命令行,转到D:/Program Files/mysqlcluster/datanode/mysql/bin目录下,输入:

  ndbd --connect-string="nodeid2;host=172.16.0.162:1186"

  同理启动172.16.0.202机子,nodeid2是根据管理节点的配置文件

  config.ini中的id决定的,如果id为2,则为nodeid2,配置文件中未指定

  id,则按顺序执行。

  (注)此时可通过在Management node中新开一命令行,转到

  c:/mysql/bin目录下输入命令:

  ndb_mgm

  启动ndb_mgm.exe,之后输入命令:

  ALL STATUS

  查看到Data node连接是否成功.之后启动正常之后才能继续启动

  SQLnode

  c、启动SQL node

  在172.16.0.161机子下进入命令行,转到D:/Program

  Files/mysqlcluster/sqlnode/mysql/bin目录下,输入:

  mysqld --console

  按相同方式启动172.16.0.202下的SQL node。

  (注):可通过在Management node节点的机器下,转到c:/mysql/bin目录

  下输入命令:

  ndb_mgm

  启动ndb_mgm.exe,之后输入命令:

  SHOW

  即可查看到各个节点的连接情况。

  正确显示应该为:

  


  四、测试

  (注:创建表时一定要加上engine = ndbcluster default charset utf8; ndbcluster :表示该表为数据节点可操作; default charset:表示设置字符集)

  C:>mysql -u root test

  mysql>create table city (nId mediumint unsigned not null

  auto_increment primary key, sName varchar(20) not null)

  engine = ndbcluster default charset utf8;

  mysql>insert city values(1, ‘city-1′);

  mysql>insert city values(1, ‘city-2′);

  在另一台 SQL 节点上登录 mysql,从表 city 里得到记录:

  C:>mysql -u root test

  mysql>select * from city;

  


  在群集系统正常工作的情况下,应当能取到先前插入的所有记录。记得在语句完成以后加上";"(分号)哦亲!

  另外的测试(单点故障测试):

  1,还可以人为停止某一个数据节点(Ctrl+C中断DOS命令ndbd.exe,停止该服务),看看所有的 SQL 节点是不是能正常工作。

  2,在某一个数据节点停止后,进行数据库操作。然后重新开启该数据节点,看看群集中的所有的 SQL 节点能不能得到完整的数据。
分享到:
本文"Windows环境下配置MySQL Cluster"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4