MySQL Cluster 7.3.5 集群配置实例(入门篇)
一、环境说明: 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/datandbcluster
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安装】MySQL_Cluster_7.2.5_配置实例_v1.2
MySQL Cluster 7.2集群部署配置
MySQL Cluster集群配置与安装
【推荐】MySQL Cluster7.2.4初步安装部署新特性性能测试等
延伸阅读:
【推荐】MySQL Cluster 配置文件(config.ini)详解
【推荐】MySQL Cluster 7.3.5 集群配置参数优化(优化篇)
MySQL Cluster 7.3.5 集群配置实例(入门篇)的更多相关文章
- MySQL Cluster 7.3.5 集群配置参数优化(优化篇)
按照前面的教程:MySQL Cluster 7.3.5 集群配置实例(入门篇),可快速搭建起基础版的MySQL Cluster集群,但是在生成环境中,还是有很多问题的,即配置参数需要优化下, 当前生产 ...
- Nacos集群配置实例(windows下测试)
1.首先 fork 一份 nacos 的代码到自己的 github 库,然后把代码 clone 到本地. git地址:https://github.com/alibaba/nacos.git 2.然后 ...
- hadoop集群配置实例
1)ssh配置 http://allthingshadoop.com/2010/04/20/hadoop-cluster-setup-ssh-key-authentication/ 2) 修改打开文件 ...
- SuSe Linux 10 企业服务器搭建双机集群配置实例
650) this.width=650;" onclick="window.open("http://blog.51cto.com/viewpic.php?refim ...
- Openstack的HA解决方案【mysql集群配置】
使用mysql的galera做多主集群配置,galera的集群优势网络上面有对比,这里不在叙述. 1. 新建3台虚拟机(centos6.5) node1:172.17.44.163 node2:172 ...
- ES2:ElasticSearch 集群配置
ElasticSearch共有两个配置文件,都位于config目录下,分别是elasticsearch.yml和logging.yml,其中,elasticsearch.yml 用来配置Elastic ...
- ElasticSearch入门 第二篇:集群配置
这是ElasticSearch 2.4 版本系列的第二篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
- Redis 3.0 Cluster集群配置
Redis 3.0 Cluster集群配置 安装环境依赖 安装gcc:yum install gcc 安装zlib:yum install zib 安装ruby:yum install ruby 安装 ...
- MongoDB高可用集群配置的方案
>>高可用集群的解决方案 高可用性即HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性. ...
随机推荐
- [C#] 逆袭——自制日刷千题的AC自动机攻克HDU OJ
前言 做过杭电.浙大或是北大等ACM题库的人一定对“刷题”不陌生,以杭电OJ为例:首先打开首页(http://acm.hdu.edu.cn/),然后登陆,接着找到“Online Exercise”下的 ...
- 《In Search of an Understandable Consensus Algorithm》翻译
Abstract Raft是一种用于管理replicated log的consensus algorithm.它能和Paxos产生同样的结果,有着和Paxos同样的性能,但是结构却不同于Paxos:它 ...
- EasyUI datagrildview导出excel报表
$.extend($.fn.datagrid.methods, { toExcel: function(jq, filename){ return jq.each(function(){ var ur ...
- nodejs+express+mysql 增删改查
之前,一直使用的是nodejs+thinkjs来完成自己所需的项目需求,而对于nodejs中另外一中应用框架express却了解的少之又少,这两天就简单的了解了一下如何使用express来做一些数据库 ...
- ORACLE实验一-三
警告: 创建的触发器带有编译错误. SQL> show error;TRIGGER TRG_SCORE_AFT_ROW 出现错误: LINE/COL ERROR-------- -------- ...
- 安全稳定实现redis cluster自动化迁移
背景 目前redis集群最火的是codis和redis cluster(官方),但官方自带工具并没有支持密码操作.那么需要密码认证使用redis cluster集群的同学要仔细看了哦. 相信大家很多人 ...
- Python学习之day3
1.字典操作 for key in dic: #循环一个字典 print key,dic.get(key) for k ,v in dic.items(): print k,v 2.集合 # -*- ...
- 从基层容器类看万变不离其宗的JAVA继承体系
以容器类为例子,可以观一叶而知秋,看看以前的前辈们是如何处理各种面向对象思想下的继承体系的.读的源代码越多,就越要总结这个继承关系否则读的多也忘得快. 首先摆上一张图片: 看到这张图很多人就慌了,难道 ...
- gcc 编译时 include 搜索路径
这是一个不复杂的问题:但是网上很多回答都不全面:偶找了一个比较全面的(测试过): 引用http://blog.csdn.net/fjb2080/archive/2010/01/23/5247494.a ...
- CentOS 6.7下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器
一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取 ...