一、环境说明: CentOS6.3(32位) + MySQL Cluster 7.3.5,规划5台机器,资料如下:

节点分布情况:

MGM:192.168.137.

NDBD1:192.168.137.

NDBD2:192.168.137.

SQL1:192.168.137.

SQL2:192.168.137.

二、下载安装包:

主要有三种类型的安装包:1:rpm安装包;2:预编译二进制安装包; 3:源码包。 这里选择第二种安装包“预编译二进制安装包”,它只需要解压即可。

先官网下载页面 http://dev.mysql.com/downloads/cluster/ ,选择 Linux - Generic 下面的 mysql-cluster-gpl-7.3.5-linux-glibc2.5-i686.tar.gz 这个安装包!

注意:我的CentOS是32位的,如果是64位系统则应该下载64位的安装包 mysql-cluster-gpl-7.3.5-linux-glibc2.5-x86_64.tar.gz

三、环境清理(在各台服务器上都要执行)

清除MySQL旧版本:

首先使用如下命令来清理之前操作系统自带的MySQL安装:

yum -y remove mysql

然后使用如下命令:

[root@localhost src]# rpm -qa | grep mysql*
mysql-libs-5.1.61-4.el6.i686
apr-util-mysql-1.3.9-3.el6_0.1.i686

对于找到的2个剩余MySQL包,按照如下的命令格式予以删除:

rpm  -e  --nodeps  mysql-libs-5.1.61-4.el6.i686
rpm -e --nodeps apr-util-mysql-1.3.9-3.el6_0.1.i686

四、软件准备(在各台服务器上都要执行)

4.1 将 mysql-cluster-gpl-7.3.5-linux-glibc2.5-i686.tar.gz 上传到各服务器的某个目录下(如 /usr/local/src ) 下面,然后解压并移到 /usr/local/mysql 目录下

tar  -xzvf   /usr/local/src/mysql-cluster-gpl-7.3.5-linux-glibc2.5-i686.tar.gz
mv /usr/local/src/mysql-cluster-gpl-7.3.5-linux-glibc2.5-i686/* /usr/local/mysql

4.2 新建mysql用户及用户组:

groupadd mysql
useradd -g mysql -s /usr/sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql

4.3 安装 My Cluster:

cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

4.4 关闭防火墙(IPTABLES)与 selinux

# 关闭防火墙

chkconfig iptables off

# 关闭 selinux

vim /etc/selinux/config  #(改为SELINUX=disabled)保存退出,

# 重启服务器

init 6

五、配置节点

5.1 配置管理节点(192.168.137.101)

# 删除自带的 /etc/my.cnf  【切记:一定要删除掉! 因为ndb_mgmd启动的时候,也会加上/etc/my.cnf的配置内容,干扰我们,所以要删除它】

rm -rf /etc/my.cnf

# 新建配置文件存放目录

mkdir /usr/local/mysql/etc
chown mysql:mysql /usr/local/mysql/etc

# 创建配置文件 config.ini

vim /usr/local/mysql/etc/config.ini

# config.ini内容如下:

[ndb_mgmd default]
datadir = /usr/local/mysql/data

[ndbd default]
NoOfReplicas = 2
DataMemory = 80M
IndexMemory = 18M
datadir = /usr/local/mysql/data

[ndb_mgmd]
NodeId = 1
HostName = 192.168.137.101

[ndbd]
NodeId = 11  
HostName = 192.168.137.102

[ndbd]
NodeId = 12
HostName = 192.168.137.103

[mysqld]
NodeId = 81
HostName = 192.168.137.104

[mysqld] 
NodeId = 82
HostName = 192.168.137.105

5.2 配置数据节点(192.168.137.102、192.168.137.103)

# 修改配置文件

vim /etc/my.cnf

# my.cnf内容如下:

[mysqld]
ndbcluster
ndb-connectstring = 192.168.137.101

[mysql_cluster]
ndb-connectstring = 192.168.137.101

5.3 配置SQL节点(192.168.137.104、192.168.137.105)

# 拷贝文件

\cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# 修改配置文件

vim /etc/my.cnf

# my.cnf内容如下:

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data

ndbcluster
ndb-connectstring = 192.168.137.101

[mysql_cluster]
ndb-connectstring = 192.168.137.101

六、启动节点

启动需要按照如下顺序进行:

Management Node > Data Node > SQL Node

6.1 启动管理节点(192.168.137.101)

# --initial 首次加载、/usr/local/mysql/etc/config.ini文件有改变,其它时候不要加,除非是在备份、恢复或配置变化后重启时,其他时候不要加,不然数据就清空。。。

/usr/local/mysql/bin/ndb_mgmd  -f  /usr/local/mysql/etc/config.ini --initial

# 正常启动方式

/usr/local/mysql/bin/ndb_mgmd  -f  /usr/local/mysql/etc/config.ini

其他常用操作:

#查看ndb_mgmd是否启动

[root@localhost mysql]# ps -ef | grep ndb_mgmd
root 2948 1 1 23:47 ? 00:00:03 /usr/local/mysql/bin/ndb_mgmd -f /usr/local/mysql/etc/config.ini
root 2984 2073 0 23:52 pts/0 00:00:00 grep ndb_mgmd
[root@localhost mysql]#

#ndb_mgmd默认启动 端口

[root@localhost mysql]# netstat -ntlp | grep ndb_mgmd
tcp 0 0 0.0.0.0:1186 0.0.0.0:* LISTEN 2948/ndb_mgmd
[root@localhost mysql]#

#查看集群状态

[root@localhost mysql]# /usr/local/mysql/bin/ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=11 (not connected, accepting connect from 192.168.137.102)
id=12 (not connected, accepting connect from 192.168.137.103) [ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.137.101 (mysql-5.6.17 ndb-7.3.5) [mysqld(API)] 3 node(s)
id=81 (not connected, accepting connect from 192.168.137.104)
id=82 (not connected, accepting connect from 192.168.137.105)
id=83 (not connected, accepting connect from any host)

6.2 启动数据节点(192.168.137.102、192.168.137.103)

# 只是在第一次启动或在备份/恢复或配置变化后重启ndbd时,才加–initial参数!

/usr/local/mysql/bin/ndbd --initial

# 正常启动方式

/usr/local/mysql/bin/ndbd

# 查看 ndbd 启动状态

[root@localhost ~]# ps -ef | grep ndbd
root 2373 1 0 18:11 ? 00:00:00 /usr/local/mysql/bin/ndbd
root 2377 1985 0 18:11 pts/0 00:00:00 grep ndbd

6.3 启动SQL节点(192.168.137.104、192.168.137.105)

# 启动 SQL 节点

service mysqld start

# 关闭 SQL 节点

service mysqld stop

# 重启 SQL 节点

service mysqld restart

# 检验mysql是否运行

service mysqld status

# 为sql指定密码

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'

/usr/local/mysql/bin/mysqladmin -u root -h 'host' password 'new-password'

# 启动命令行窗口

/usr/local/mysql/bin/mysql -u root –p

参考:

【rpm安装】M​y​S​Q​L​_​C​l​u​s​t​e​r​_​7​.​2​.​5​_​配​置​实​例​_​v​1​.​2

M​y​S​Q​L​ C​l​u​s​t​e​r​ ​7​.​2​集​群​部​署​配​置

M​y​SQL​ ​C​l​u​s​t​e​r​集​群​配​置​与​安​装

MySQL_Cluster测试配置

【推荐】MySQL Cluster7.2.4初步安装部署新特性性能测试等

延伸阅读:

【推荐】MySQL Cluster在线添加数据节点

【推荐】MySQL Cluster 配置文件(config.ini)详解

【推荐】MySQL Cluster 7.3.5 集群配置参数优化(优化篇)

MySQL Cluster 7.3.5 集群配置实例(入门篇)的更多相关文章

  1. MySQL Cluster 7.3.5 集群配置参数优化(优化篇)

    按照前面的教程:MySQL Cluster 7.3.5 集群配置实例(入门篇),可快速搭建起基础版的MySQL Cluster集群,但是在生成环境中,还是有很多问题的,即配置参数需要优化下, 当前生产 ...

  2. Nacos集群配置实例(windows下测试)

    1.首先 fork 一份 nacos 的代码到自己的 github 库,然后把代码 clone 到本地. git地址:https://github.com/alibaba/nacos.git 2.然后 ...

  3. hadoop集群配置实例

    1)ssh配置 http://allthingshadoop.com/2010/04/20/hadoop-cluster-setup-ssh-key-authentication/ 2) 修改打开文件 ...

  4. SuSe Linux 10 企业服务器搭建双机集群配置实例

      650) this.width=650;" onclick="window.open("http://blog.51cto.com/viewpic.php?refim ...

  5. Openstack的HA解决方案【mysql集群配置】

    使用mysql的galera做多主集群配置,galera的集群优势网络上面有对比,这里不在叙述. 1. 新建3台虚拟机(centos6.5) node1:172.17.44.163 node2:172 ...

  6. ES2:ElasticSearch 集群配置

    ElasticSearch共有两个配置文件,都位于config目录下,分别是elasticsearch.yml和logging.yml,其中,elasticsearch.yml 用来配置Elastic ...

  7. ElasticSearch入门 第二篇:集群配置

    这是ElasticSearch 2.4 版本系列的第二篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

  8. Redis 3.0 Cluster集群配置

    Redis 3.0 Cluster集群配置 安装环境依赖 安装gcc:yum install gcc 安装zlib:yum install zib 安装ruby:yum install ruby 安装 ...

  9. MongoDB高可用集群配置的方案

    >>高可用集群的解决方案 高可用性即HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性. ...

随机推荐

  1. NOIP2015斗地主[DFS 贪心]

    题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游戏.在斗地主中,牌的大小关系根据牌的数码表示如下:3<4< ...

  2. thinkphp

    U方法: 模板导入后,先在浏览器执行index.php文件,当出现下图时,框架中的内容才可以出现. 增加admin后台文件夹: 连接数据库:可以使用pdo的方式连接

  3. iOS 2D绘图 (Quartz 2D) 概述

    本篇博客原文地址:http://blog.csdn.net/hello_hwc?viewmode=list 由于自己的项目需要,从网络上下载了许多关于绘制图形的demo,只是用在自己的项目中,很多地方 ...

  4. C/C++实践笔记 007

    进制输出自己写一个_itoa 进制转换void main(){ int num = 0; scanf("%d", &num); printf("num=%i&qu ...

  5. web前端开发最佳实践笔记

    一.文章开篇 由于最近也比较忙,一方面是忙着公司的事情,另外一方面也是忙着看书和学习,所以没有时间来和大家一起分享知识,现在好了,终于回归博客园的大家庭了,今天我打算来分享一下关于<web前端开 ...

  6. c语言之【#ifdef】

    电脑程序语句,我们可以用它区隔一些与特定头文件.程序库和其他文件版本有关的代码. 1 2 3 #ifdef 语句1     // 程序2 #endif 可翻译为:如果宏定义了语句1则程序2. 作用:我 ...

  7. C#的前世今生,学会C#还能找到高薪工作吗?

    其实C#,.net正在逐步淡出程序员的视野是正在发生的现实,量子及量子的小伙伴们,还在坚持写C#代码的人几乎没有了,回忆起过去那些写C#时候的美好时光,真是不胜唏嘘,最近园子里的一篇<C#程序员 ...

  8. C语言学习 第四次作业总结

    本次作业主要为了复习分支语句,同时复习之前学习过的判断语句,printf和scanf函数的使用. 学习到这里,同学们应该已经基本掌握了基本的数据类型,分支结构,循环结构,条件判断语句.应该可以利用这些 ...

  9. WPF资源字典的使用【转】

    资源字典出现的初衷就在于可以实现多个项目之间的共享资源,资源字典只是一个简单的XAML文档,该文档除了存储希望使用的资源之外,不做任何其它的事情. 1.  创建资源字典 创建资源字典的过程比较简单,只 ...

  10. shell中测试命变量是否已经定义

    (1)sehll实例 # cat subshell #!/bin/bash if (set -u; : $var); then #冒号与$间有空格 echo "Variable is set ...