上文《MySQL数据库管理(一)MySQL Cluster集群简单介绍》对MySQL Cluster集群做了简要介绍。本文将教大家一步步搭建单机环境下的MySQL数据库集群。
一、单机环境搭建
首先到MySQl官网上 下http://www.mysql.com/downloads/Cluster/下载所需的安装包。然后将下载得到的ZIP包解压到C:yplmysqlmysqlc
C:yplmysqlmy_Cluster
C:yplmysqlmy_Cluster db_data
C:yplmysqlmy_Clustermysqld_data dbinfo
C:yplmysqlmy_Clusterconf
之后,在C:yplmysqlmy_Clusterconf目录中创建下述两个配置文件:
(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:yplmysqlmy_Cluster db_data id=1 [ndbd default] noofreplicas=2 datadir=C:yplmysqlmy_Cluster db_data [ndbd] hostname=localhost id=3 [ndbd] hostname=localhost id=4 [mysqld] hostname=localhost
mysqld进程须要一个名为mysql的系统数据库,以存储必要的系统数据和用户数据。
故须要进行下面操作:
- 将C:yplmysqlmysqlcdatamysql整个文件夹拷贝到C:yplmysqlmy_Cluster db_data文件夹下。
- 将C:yplmysqlmysqlcdata dbinfo整个文件夹拷贝到C:yplmysqlmy_Cluster db_data文件夹下。
在上述工作完毕后,就可以启动MySQL Cluster。
二、启动节点:管理节点-->数据节点-->SQl节点
(1)启动管理节点
进入命令行工具洁面后依次输入命令:
cd C:yplmysqlmy_Cluster start /B C:yplmysqlmysqlcin db_mgmd -f confconfig.ini --initial --configdir=C:yplmysqlmy_Clusterconf
结果例如以下:
(2)启动数据节点
- 启动第一个数据节点,输入命令:
start /B C:yplmysqlmysqlcin dbd -c localhost:1186
- 启动第二个数据节点。输入命令:
start /B C:yplmysqlmysqlcin dbd -c localhost:1186
(3)启动MySQl服务引擎
输入命令:
start /B C:yplmysqlmysqlcinmysqld --defaults-file=confmy.cnf
查看数据节点是否启动完成:
C:yplmysqlmysqlcin db_mgm -e show
结果例如以下:
各个节点启动成功后。能够在进程里看到全部节点的进程。启动任务管理器,将看到结果。如图:
连接到MySQLserver。输入命令:
C:yplmysqlmysqlcinmysql -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:yplmysqlmy_Cluster db_dataypl 文件夹下有刚创建的表。
同一时候应注意,当数据节点分布在不同机器上时,按InnoDB引擎存储的数据在其他数据节点上查不到,能够做对应的实验来验证。
MySQL Cluster的服务必须手动停止。服务停止后。其他集群节点能够使用管理节点(ndb_mgm)来停止。输入命令:
C:yplmysqlmysqlcin db_mgm -e shutdown C:yplmysqlmysqlcinmysqladmin -u root -p123456 shutdown
结果例如以下: