【原创】Windows下构建Mysql Cluster集群数据库

1.1.1    集群版部署

先准备好软件,Mysql集群软件下载地址:http://dev.mysql.com/downloads/cluster,选择mysql-cluster-gpl-noinstall-7.1.17-win32.zip(Windows (x86, 32-bit), ZIP Archive)

1.1.2    集群规划

节点ID(NodeID)

IP地址

MySQL server (SQL) node

192.168.0.1(查询节点服务器A)

Management (MGMD) node

192.168.0.2(集群管理服务器)

MySQL server (SQL) node

192.168.0.3(查询节点服务器B)

Data (NDBD) node A

192.168.0.4(数据库服务器A)

Data (NDBD) node B

192.168.0.5(数据库服务器B)

1.1.3    管理节点安装

解压下载的mysql-cluster-gpl-noinstall-7.1.17-win32.zip包里的程序文件,到c:\mysql\mysql-cluster文件夹下,完成后目录结构如下图:

 

在c:\mysql\mysql-cluster\bin目录下新建两个文件my.ini和config.ini:

My.ini内容如下:

[mysql_cluster]

# Options for management node process

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

Config.ini文件内容如下:

###### 数据节点默认配置 ######

[NDBD DEFAULT]

NoOfReplicas=2

DataMemory=512M

IndexMemory=128M

DataDir=e:/app/ndb/data

BackupDataDir=e:/app/ndb/data/backup

LockPagesInMainMemory=1

TimeBetweenLocalCheckpoints=20

TimeBetweenGlobalCheckpoints=1000

TimeBetweenEpochs=100

TimeBetweenWatchdogCheckInitial=60000

StringMemory=20

MaxNoOfTables=1024

MaxNoOfOrderedIndexes=2048

MaxNoOfUniqueHashIndexes=512

MaxNoOfAttributes=20480

MaxNoOfTriggers=10240

DiskCheckpointSpeedInRestart=100M

FragmentLogFileSize=64M

NoOfFragmentLogFiles=16

RedoBuffer=32M

MaxNoOfConcurrentOperations=500000

TransactionInactiveTimeout=50000

MaxNoOfExecutionThreads=8

BatchSizePerLocalScan=512

### 磁盘存储

SharedGlobalMemory=20M

DiskPageBufferMemory=80M

###### COMPUTER DEFINITIONS ######

### Datanode Computer #1

[COMPUTER]

Id=1

HostName=192.168.0.4

### Datanode Computer #2

[COMPUTER]

Id=2

HostName=192.168.0.5

# Management Node Computer #1

[COMPUTER]

Id=3

HostName=192.168.0.2

[COMPUTER]

Id=4

HostName=192.168.0.3

#### Data Nodes

# Node group #1

[NDBD]

Id=1

ExecuteOnComputer=1

[NDBD]

Id=2

ExecuteOnComputer=2

# Node group #2

[NDBD]

Id=3

ExecuteOnComputer=1

[NDBD]

Id=4

ExecuteOnComputer=2

### Management node

[NDB_MGMD]

Id=21

ExecuteOnComputer=3

# Anonymous API nodes

[MYSQLD]

Id=51

Hostname=192.168.0.3

[MYSQLD]

Id=52

Hostname=192.168.0.1

[MYSQLD]

Id=53

Hostname=192.168.0.4

[MYSQLD]

Id=54

Hostname=192.168.0.5

[MYSQLD]

[MYSQLD]

[MYSQLD]

[MYSQLD]

[MYSQLD]

 

1.1.4    数据节点安装

解压下载的mysql-cluster-gpl-noinstall-7.1.17-win32.zip包里的程序文件,到c:\mysql\mysql-cluster文件夹下,在这个目录下新建my.ini文件,内容如下

#######################################################################

[mysql_cluster]                  # Options for data node process:

ndb-connectstring=192.168.0.2    # location of management server

#######################################################################

1.1.5    查询节点安装

解压下载的mysql-cluster-gpl-noinstall-7.1.17-win32.zip包里的程序文件,到c:\mysql\mysql-cluster文件夹下,根据查询压力及服务器的配置,选择合适的my.ini文件,各建议配置文件的详细解释如下:

类型

摘要

应用场景

small

运行mysql服务的最小配置示例

(<= 64M)

这个配置可以在 配置很低(<= 64M内存)的服务器上运行mysql数据库,仅占用很少的系统资源

medium

中等mysql服务器建议配置示例

(32M - 64M)

这个配置可以在 配置中等(64M-128M内存) 的服务器上运行mysql数据库,并运行web服务

large

大型mysql服务器建议配置示例

(512M内存)

这个配置可以在 配置较高(512M内存) 的服务器上运行mysql数据库

huge

特大型mysql服务器建议配置示例(1G-2G内存)

这个配置可以在 配置高 (1-2G内存) 的服务器上运行mysql数据库

heavy

以InnoDB为数据存储模式,4GB以上内存服务器建议配置示例

这个配置可以在 配置特高 (>=4G内存) 的服务器上运行mysql数据库,但仅仅只支持InnoDB类型的存储引擎,可以支持少量连接产生的复杂查询                                      

建议使用my-large.ini,另存为my.ini,并在该文件的[mysqld]章节内,添加如下信息

#######################################################################

# 在[mysqld]章节中添加:

skip-name-resolve

# Options for mysqld process:

ndbcluster                  # run NDB storage engine

ndb-connectstring=[NDB_MGMD]的IP地址 # location of management server

ndb-connectstring=192.168.0.2    # location of management server

#######################################################################

posted @ 2011-12-22 10:24  田超  阅读(1599)  评论(0编辑  收藏  举报