您的位置:首页 > 数据库 > MySQL

MySQL数据库管理(二)单机环境下MySQL Cluster的安装

2015-03-15 18:45 274 查看
上文MySQL数据库管理(一)MySQL Cluster集群简介对MySQL
Cluster集群做了简要介绍,本文将教大家一步步搭建单机环境下的MySQL数据库集群。

一、单机环境搭建

首先到MySQl官网上 下http://www.mysql.com/downloads/Cluster/下载所需的安装包,然后将下载得到的ZIP包解压到C:\ypl\mysql\mysqlc

这个MySQL数据库的集群由一个MySQL服务引擎(mysqlds)、两个数据节点(ndbd)和一个管理节点(ndb_mgmd)组成,所有的节点都运行在同一台机器上。依次建立以下文件夹:

C:\ypl\mysql\my_Cluster

C:\ypl\mysql\my_Cluster\ndb_data

C:\ypl\mysql\my_Cluster\mysqld_data\ndbinfo

C:\ypl\mysql\my_Cluster\conf

之后,在C:\ypl\mysql\my_Cluster\conf文件夹中创建下述两个配置文件:

(1)my.cnf

内容如下:

[mysqld]
ndbCluster
datadir=C:\\ypl\\mysql\\my_Cluster\\mysqld_data
basedir=C:\\ypl\\mysql\\mysqlc
port=3306
(2)config.ini

内容如下:

[ndb_mgmd]
hostname=localhost
datadir=C:\ypl\mysql\my_Cluster\ndb_data
id=1

[ndbd default]
noofreplicas=2
datadir=C:\ypl\mysql\my_Cluster\ndb_data

[ndbd]
hostname=localhost
id=3

[ndbd]
hostname=localhost
id=4

[mysqld]
hostname=localhost

mysqld进程需要一个名为mysql的系统数据库,以存储必要的系统数据和用户数据。故需要进行以下操作:

将C:\ypl\mysql\mysqlc\data\mysql整个文件夹复制到C:\ypl\mysql\my_Cluster\ndb_data目录下。
将C:\ypl\mysql\mysqlc\data\ndbinfo整个文件夹复制到C:\ypl\mysql\my_Cluster\ndb_data目录下。

在上述工作完成后,即可启动MySQL Cluster。

二、启动节点:管理节点-->数据节点-->SQl节点

(1)启动管理节点

进入命令行工具洁面后依次输入命令:

cd  C:\ypl\mysql\my_Cluster
start /B C:\ypl\mysql\mysqlc\bin\ndb_mgmd -f conf\config.ini --initial --configdir=C:\ypl\mysql\my_Cluster\conf


结果如下:





(2)启动数据节点

启动第一个数据节点,输入命令:

start /B C:\ypl\mysql\mysqlc\bin\ndbd -c localhost:1186


启动第二个数据节点,输入命令:

start /B C:\ypl\mysql\mysqlc\bin\ndbd -c localhost:1186


(3)启动MySQl服务引擎

输入命令:

start /B C:\ypl\mysql\mysqlc\bin\mysqld --defaults-file=conf\my.cnf

查看数据节点是否启动完毕:

C:\ypl\mysql\mysqlc\bin\ndb_mgm  -e show


结果如下:









各个节点启动成功后,可以在进程里看到所有节点的进程。启动任务管理器,将看到结果,如图:



连接到MySQL服务器,输入命令:

C:\ypl\mysql\mysqlc\bin\mysql -u root -p123456




若连接成功,将出现如下界面:



三、测试

创建数据库yplbeyond(注意使用ndb),在该数据库内创建表users,并插入数据

drop database if exists yplbeyond;

create database yplbeyond;
use yplbeyond;
create table users(
id int(3) auto_increment not null primary key,
uid char(50) not null,
pwd char(50) not null,
realname char(10) not null,
phone char(10) not null,
mail char(30) not null,
date datetime null
) engine=ndb;;
insert into users values('','人 民 大 学','rucedu','lizi','00000000','11@11','');
select * from users;












注意此时与在MySQL中建表不同,需要在表的末尾加上“engine=ndb;”,因为使用的是MySQL Cluster,标的存储引擎是基于内存的NDB,而不是InnoDB。在文件夹ypl内搜索,可以查到C:\ypl\mysql\my_Cluster\ndb_data\ypl
目录下有刚创建的表。同时应注意,当数据节点分布在不同机器上时,按InnoDB引擎存储的数据在其它数据节点上查不到,可以做相应的实验来验证。

MySQL Cluster的服务必须手动停止,服务停止后,其它集群节点可以使用管理节点(ndb_mgm)来停止。输入命令:

C:\ypl\mysql\mysqlc\bin\ndb_mgm -e shutdown

C:\ypl\mysql\mysqlc\bin\mysqladmin -u root -p123456 shutdown

结果如下:





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: