一、环境准备(Centos7,mysql-cluster-gpl-7.5.6-linux-glibc2.5-x86_64.tar.gz)
卸载以前安装的Mysql 或者 mariadb
yum -y remove mysql*
yum -y remove mariadb*
二、停用安全策略seLinux,关闭防火墙或者开启3306,1186端口
建议使用防火墙保证安全性
关闭防火墙 systemctl stop firewalld 或者 chkconfig --level 35 iptables off
禁用防火墙 systemctl disable firewalld
永久禁用安全策略(需要重启)
vi /etc/selinux/config
SELINUX=disabled

(centos6)
vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT #DROP关闭
-A INPUT -p tcp -m state --state NEW -m tcp --dport 2202 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1186 -j ACCEPT
/etc/init.d/iptables restart
setenforce 0
(centos7)
firewall-cmd --add-port=2202/tcp --zone=public --permanent
firewall-cmd --add-port=3306/tcp --zone=public --permanent
firewall-cmd --add-port=1186/tcp --zone=public --permanent
firewall-cmd --reload
setenforce 0
三、安装
管理节点:192.168.1.140
数据节点1:192.168.1.130
数据节点2:192.168.1.135
sql节点1:192.168.1.130
sql节点2:192.168.1.135

每个节点上
压缩包上传解压 比如上传至/usr/local
tar -xzvf mysql-cluster-gpl-7.5.4-linux-glibc2.5-x86_64.tar.gz
3.1 管理节点安装

cd mysql-cluster-gpl-7.5.4-linux-glibc2.5-x86_64
cd bin
#ndb管理节点相关文件
cp ndb_mgm* /usr/local/bin
cd /usr/local/bin
#增加执行权限
chmod +x ndb_mgm*
#创建配置文件
mkdir /var/lib/mysql-cluster
mkdir /usr/local/mysql
vi /var/lib/mysql-cluster/config.ini
#默认配置
[ndbd default]
NoOfReplicas=2 #数据节点数量
DataMemory=5120M #存储大小,内存的合适大小
IndexMemory=128M #索引存储大小
ServerPort=1186 #端口默认1186

#管理节点
[ndb_mgmd]
nodeid=1 #节点ID
HostName=192.168.1.140 #管理节点地址
DataDir=/var/lib/mysql-cluster #(内存)数据目录

#数据节点
[ndbd]
nodeid=21 #节点ID
HostName=192.168.1.130 #数据节点地址
DataDir=/var/lib/mysql-cluster #(内存)数据目录

[ndbd]
nodeid=22
HostName=192.168.1.135
DataDir=/var/lib/mysql-cluster

#sql节点
[mysqld]
nodeid=31
HostName=192.168.1.130 #sql节点地址,可访问
[mysqld]
nodeid=32
HostName=192.168.1.135

3.2 数据节点和sql节点安装配置

3.2.1 数据节点配置

#拷贝文件
cd mysql-cluster-gpl-7.5.4-linux-glibc2.5-x86_64
cd bin
cp ndbd /usr/local/bin
#创建目录(注意和管理节点配置文件保持一致)
mkdir -p /var/lib/mysql-cluster
#创建配置文件
vi /etc/my.cnf
[mysql_cluster] #配置数据节点连接管理节点
ndb-connectstring=192.168.1.140

3.2.2 sql节点配置

#新增用户组mysql和用户msyql
groupadd mysql
useradd -g mysql -s /bin/false mysql
#将解压的文件重命名
mv mysql-cluster-gpl-7.5.6-linux-glibc2.5-x86_64 /usr/local/mysql
#初始化数据库
cd /usr/local/mysql/bin/
./mysqld --initialize #(旧版本scripts/mysql_install_db --user=mysql)注意记录临时密码
#修改权限

cd ..
chown -R root .
chown -R mysql data
chgrp -R mysql .
#添加服务
cp support-files/mysql.server /etc/rc.d/init.d/
chmod +x /etc/rc.d/init.d/mysql.server
#添加开机启动
chkconfig --add mysql.server
#配置数据节点
vi /etc/my.cnf
#申明是sql节点,其中的IP为管理节点的IP
[mysqld]
ndbcluster
ndb-connectstring=192.168.1.140

注意:数据节点和sql节点同一台机器按照以下配置即可
#新增用户组mysql和用户msyql
groupadd mysql
useradd -g mysql -s /bin/false mysql
#新建文件夹并赋予权限
#mkdir /var/lib/mysql-cluster
#chown root:mysql /var/lib/mysql-cluster
#将解压的文件重命名
mv mysql-cluster-gpl-7.5.6-linux-glibc2.5-x86_64 /usr/local/mysql
#初始化数据库
cd /usr/local/mysql/bin/
./mysqld --initialize #(旧版本scripts/mysql_install_db --user=mysql)注意记录临时密码
#修改权限

cd ..
chown -R root .
chown -R mysql data
chgrp -R mysql .
#添加服务
cp support-files/mysql.server /etc/rc.d/init.d/
chmod +x /etc/rc.d/init.d/mysql.server
#添加开机启动
chkconfig --add mysql.server

#配置数据节点
vi /etc/my.cnf
#申明是sql节点,其中的IP为管理节点的IP
[mysqld]
ndbcluster
ndb-connectstring=192.168.1.140
#申明是数据节点,其中的IP为管理节点的IP
[mysql_cluster]
ndb-connectstring=192.168.1.140
四、启动和关闭(注意下面顺序不能变)
启动:(相关可执行文件路径视安装路径而定)
管理节点--》数据节点--》sql节点 注意--initial参数在初始化或者需要恢复或者配置文件发生变化是需要
管理节点:/usr/local/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial
数据节点:/usr/local/mysql/bin/ndbd --initial
sql节点:service mysql start 或者service mysqld start
关闭:
sql节点--》管理节点
sql节点 关闭sql服务即可
管理节点:/usr/local/bin/ndb_mgm
mgm>shutdown
查看状态:
管理节点:/usr/local/bin/ndb_mgm
mgm>show #所有节点连接正常时即正常
五、改密并开启远程访问:sql节点
初始密码登录
mysql -u root -p
set password=password('root@neusoft');
grant all privileges on *.* to root@'%' identified by 'root@neusoft';
FLUSH PRIVILEGES;
六、注意
NDB 默认引擎 ndbcluster,否则不同步
可在配置成功后my.cnf 添加default-storage-engine=ndbcluster
七、附加
添加可执行文件路径
添加执行文件路径
#当前用户(/etc/profile 所有用户生效)
vi ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin

mysql 官方集群的更多相关文章

  1. 多图文,详细介绍mysql各个集群方案

    目录 多图文,详细介绍mysql各个集群方案 一,mysql原厂出品 二,mysql第三方优化 三,依托硬件配合 四,其它 多图文,详细介绍mysql各个集群方案 集群的好处 高可用性:故障检测及迁移 ...

  2. MySQL分布式集群之MyCAT(转)

    原文地址:http://blog.itpub.net/29510932/viewspace-1664499/ 隔了好久,才想起来更新博客,最近倒腾的数据库从Oracle换成了MySQL,研究了一段时间 ...

  3. MySQL数据库集群进行正确配置步骤

    MySQL数据库集群进行正确配置步骤 2010-06-09 10:47 arrowcat 博客园 字号:T | T 我们今天是要和大家一起分享的是对MySQL数据库集群进行正确配置,我前两天在相关网站 ...

  4. MySQL Cluster 集群

    本文转载 http://www.cnblogs.com/gomysql/p/3664783.html MySQL Cluster是一个基于NDB Cluster存储引擎的完整的分布式数据库系统.不仅仅 ...

  5. Facebook揭密:如何让MySQL数据库集群自主运行

    Facebook运行着全球最大的MySQL数据库集群,该集群分布在两个大洲上的多个数据中心中数以千计的服务器上.让人不解的是,Facebook只动用了一个很小的团队来管理这个庞大的MySQL数据库集群 ...

  6. 超详细的 Redis Cluster 官方集群搭建指南

    今天从 0 开始搭建 Redis Cluster 官方集群,解决搭建过程中遇到的问题,超详细. 安装ruby环境 因为官方提供的创建集群的工具是用ruby写的,需要ruby2.2.2+版本支持,rub ...

  7. 基于keepalived搭建MySQL热机集群

    背景 MySQL的高可用方案一般有如下几种: keepalived+双主,MHA,MMM,Heartbeat+DRBD,PXC,Galera Cluster 比较常用的是keepalived+双主,M ...

  8. 如何搭建一个 MySQL 分布式集群

    1.准备集群搭建环境 使用6台虚拟机来搭建 MySQL分布式集群 ,相应的实验环境与对应的MySQL节点之间的对应关系如下图所示: 管理节点(MGM):这类节点的作用是管理MySQLCluster内的 ...

  9. MySQL分布式集群之MyCAT(三)rule的分析【转】

    首先写在最前面,MyCAT1.4的alpha版本已经发布了,这里面修复了不少的bug,也完善了一细节,之前两篇博客已经做了一些修改 ---------------------------------- ...

随机推荐

  1. Ext4文件系统架构分析(二)

    接着上一篇博文,继续分析Ext4磁盘布局中的元数据. 1.7 超级块 超级块记录整个文件系统的大量信息,如数据块个数.inode个数.支持的特性.管理信息,等待. 如果设置sparse_super特性 ...

  2. 30秒搞定String面试

    Java 语言中,无论新菜鸟,还是老司机,真正了解String内存的很少.关于String 的试题,花样很多.== 在什么情况下是true,什么情况是false.我总结出如下3点让你彻底结束对Stri ...

  3. Liunx信息显示与文件搜索

    . uname 显示系统相关信息,如内核版本号,硬件架构 -a # 显示系统所有相关信息 -m # 显示计算机硬件架构 -n # 显示主机名称 -r # 显示内核发行版本号 -s # 显示内核名称 - ...

  4. 根据location地址,在导航栏高亮显示当前页面

    获取当前页面的地址栏.与导航栏中所有<a> 标签的href属性 进行比较.如果相等则高亮显示 此<a>标签. 注意点:a 标签的href 属性在浏览器解析时 是绝对路径. a  ...

  5. SpringBoot与mongodb的结合

    本文系列文章: ​ 使用Shell 操作 MongoDB的技巧 ​ MongoTemplate的使用技巧及其注意事项 敬请期待. 前言 最近公司想要做一个用户行为数据的收集,最开始想用mysql来存储 ...

  6. Redis全方位讲解--主从复制

    前言 前面介绍了redis持久化和容灾备份,这篇会介绍redis主从复制和redis持久化在主从复制中的一些应用.因为本人没有那么多服务器或机器,所以这里主要介绍下如何在docker容器中搭建主从复制 ...

  7. sqlserver分区视图中分区列的规则

    分区列规则 分区列存在于每个成员表上,并且通过 CHECK 约束标识特定表中的可用数据.分区列必须遵守如下规则: 每个基表都拥有键值由 CHECK 约束所强制的分区列.每个表的 CHECK 约束的键范 ...

  8. python基础学习1-类相关内置函数

    #!/usr/bin/env python # -*- coding:utf-8 -*- #===issubclass(class,classinfo) 检查class是否是classinfo类的子类 ...

  9. PCA人脸识别的python实现

    这几天看了看PCA及其人脸识别的流程,并在网络上搜相应的python代码,有,但代码质量不好,于是自己就重新写了下,对于att_faces数据集的识别率能达到92.5%~98.0%(40种类型,每种随 ...

  10. CodeForces 1062E Company

    Description The company \(X\) has \(n\) employees numbered from \(1\) through \(n\). Each employee \ ...