Mysql-cluster搭建
wptr33 2025-05-30 17:53 5 浏览
- 前期准备
准备五台虚拟机:
ip地址分别为:
192.168.1.211 管理节点
192.168.1.64 SQL节点
192.168.1.65 SQL节点
192.168.1.70 数据节点
192.168.1.71 数据节点
- 修改每台主机的/etc/hosts 文件
- 关闭防火墙
- 安装jdk6.5
1)上传jdk安装包至 /soft下
2)通过jdk-6u45-linux-x64-rpm.bin命令使其获得可执行权限
# chmod +x jdk-6u45-linux-x64-rpm.bin
3)通过 jdk-6u45-linux-x64-rpm.bin来进行安装
# ./jdk-6u45-linux-x64-rpm.bin
4)设置环境变量,vi /etc/profile文件,添加如下红色字部分内容并保存
export JAVA_HOME=/usr/java/jdk1.6.0_45
export PATH=$JAVA_HOME/bin:$PATH
5)执行命令使修改生效
#source /etc/profile
6)验证JAVA环境是否生效,执行命令:java –version
- 创建用户
#groupadd -g 800 mysql
#useradd -u 800 -g 800 -m -d /home/mysql mysql
- 解压安装包
# tar -zxvf mysql-cluster-gpl-7.0.34-linux-x86_64-glibc23.tar.gz
- 将解压出来的文件拷贝到/user/local 下
#mv mysql-cluster-gpl-7.0.34-linux-x86_64 /usr/local/mysql
- 修改目录权限
#chown -R root .
#chown -R mysql data
#chgrp -R mysql .
- 安装初始的数据库表
#scripts/mysql_install_db --user=mysql
- 设置mysql服务开机自启动
#cp support-files/mysql.server /etc/init.d/mysqld
#chmod +x /etc/init.d/mysqld
#chkconfig --add mysqld
- 启动mysql服务
#service mysqld start
以上步骤需要在所有的机器上都执行
- 配置管理节点(192..168.1.211)
#cd /var/lib
#mkdir mysql_cluster
#cd /var/lib/mysql_cluster
#vim config.ini
1、配置文件config.ini 内容如下:
[ndbd default]
NoOfReplicas=2
DataMemory=80M
IndexMemory=18M
[ndb_mgmd]
NodeId=1
hostname=192.168.1.211
datadir=/var/lib/mysql_cluster
[ndbd]
NodeId=2
hostname=192.168.1.70
datadir=/var/lib/mysql-cluster
[ndbd]
NodeId=3
hostname=192.168.1.71
datadir=/var/lib/mysql-cluster
[mysqld]
NodeId=4
hostname=192.168.1.64
[mysqld]
NodeId=5
hostname=192.168.1.65
- 安装管理节点
安装管理节点只需要Mysql Cluster服务端程序(ndb_mgmd)和监听客户端程序(ndb_mgm)
#cp /usr/local/mysql/bin/ndb_mgm* /usr/local/bin
#cd /usr/local/bin
#chmod +x ndb_mgm*
- 配置数据节点(192.168.1.71 / 192.168.1.70)
1、配置my.cnf 的内容如下
[mysqld]
datadir=/var/lib/mysql-cluster
ndb-connectstring=192.168.1.211
[mysql_cluster]
Ndb-connectstring=192.168.1.211
- 配置SQL节点
- 配置my.cnf文件
[mysqld]
ndbcluster
ndb-connectstring=192.168.1.211
[client]
default-character-set=utf8
[mysql_cluster]
ndb-connectstring=192.168.1.211
- Cluster环境启动
注:先启动管理节点、然后启动数据节点、最后启动SQL节点
- 启动管理节点
#ndb_mgmd -f /var/lib/mysql-cluster/config.ini
可以使用ndb_mgm来监听客户端
#ndb_mgm
- 启动数据节点
首次启动,则需要添加--initial参数,以便进行NDB节点的初始化工作,在以后启动过程中,则是不能添加该参数的,否则ndbd程序会清除在之前建立的所有用于恢复的数据文件和日志文件。
#/usr/local/mysql/bin/ndbd --initial
如果不是首次启动则使用如下命令:
#/usr/local/mysql/bin/ndbd
- 启动SQL节点
#/usr/local/mysqk/bin/mysqld_safe --user=mysql &
- 集群测试
在其中一台SQL节点上进行相关数据库的创建,然后再到另一个SQL节点上查看数据是否同步
在(192.168.1.64)节点上执行
#/usr/local/mysql/bin/mysql -uroot -p
Mysql>show databases;
Mysql>create database aa;
Mysql>use aa;
Mysql>create table ctest2(i INT)ENGINE=NDB;//这里必须制定数据库表的引擎为NDB,否则同步失败
Mysql>insert into ctest2() values(1);
Mysql>select * from ctest2;
然后去SQL(192.168.1.65)节点上查看是否已经同步
Mysql> show create table 表名;
测试二
关闭一个数据节点,在另一个节点输入,开启关闭的节点看数据是否同步过来
首先把数据节点1 重启,然后在节点2上添加数据
在SQL节点2上做如下操作:
Mysql>create database bb;
Mysql>use bb;
Mysql>create table ctest3(i INT)ENGINE=NDB;
Mysql>use aa;
Mysql>insert into ctest2()values(333);
Mysql>select * from ctest2;
等数据节点1启动完毕,启动数据节点1 的服务
#/usr/local/mysql/bin/ndbd --initial
#service mysqld start
登录数据库查看数据
#/usr/local/mysql/bin/mysql -uroot -p
- 关闭集群
1、关闭管理节点和数据节点只需要在管理节点执行
#/usr/local/mysqlbin/ndb_mgm -e shutdown
- 关闭SQL节点
#/etc/init.d/mysqld stop
- 上一篇:mysql 主从数据库搭建
- 下一篇:数据库基础:mysql主从集群搭建
相关推荐
- 数据库基础:mysql主从集群搭建
-
文章首发于微信公众号:java架构师进阶之路前言:Mysql数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题。还好mysql数据库提供了一种主从备份的机制,其实就是把主数据库的所有的...
- Mysql-cluster搭建
-
前期准备准备五台虚拟机:ip地址分别为:192.168.1.211管理节点192.168.1.64SQL节点192.168.1.65SQL节点192.168.1.70数据节点192.168.1...
- mysql 主从数据库搭建
-
一、创建目录在dev/htb下面创建文件夹master01htb]#mkdirmysql/master01-p2)进入master01...
- 从零搭建高可用的 MySQL 主从复制架构(基于 Linux 实战指南)
-
背景在生产环境中,单点MySQL数据库容易成为性能瓶颈或单点故障源。搭建MySQL主从复制架构,可以实现读写分离、高可用,提升系统的整体稳定性与扩展性。...
- 「MySQL 8」MySQL 5.7都即将停只维护了,是时候学习一波MySQL 8了
-
MySQL8新特性选择MySQL8的背景:MySQL5.6已经停止版本更新了,对于MySQL5.7版本,其将于2023年10月31日停止支持。后续官方将不再进行后续的代码维护。另外,...
- Mysql启动选项和配置文件
-
Mysql启动选项和配置文件Mysql启动方式下面的启动命令都需要依赖在Linux环境下配置的Mysql环境变量...
- centos安装mysql操作手册
-
1.下载Mysql首先去Mysql官网下载安装包,网址https://dev.mysql.com/downloads/mysql/推荐大家下载Linux通用版本的,便于管理安装位置,也方便一台服务器...
- MySQL安装
-
MySQL的安装过程因操作系统的不同而有所差异。以下是在几种常见操作系统上安装MySQL的基本步骤:Windows下载MySQL:访问MySQL官方网站下载页面:MySQLDownloads...
- MySQL数据库安装教程
-
前言今天就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。...
- MySQL学到什么程度?才有可以在简历上写精通
-
前言如今互联网行业用的最多就是MySQL,然而对于高级Web面试者,尤其对于寻找30k下工作的求职者,很多MySQL相关知识点基本都会涉及,如果面试中,你的相关知识答的模糊和不切要点,基...
- 一起免费考 MySQL OCP 认证啦
-
前言:在1995年,首个MySQL版本发布,为庆祝MySQL诞辰30周年,OracleUniversity在限定期间内推出了多个MySQL的免费培训课程与认证,其中也包括My...
- 教程2 | 制作用户管理系统
-
一、项目简介用户管理系统是一个基于C/S模式的小型管理系统,使用了GUI技术来实现管理系统的页面效果,该管理系统可以对用户的信息,比如姓名、年龄、密码和地址等进行增删改查操作。用户管理系统通过JDBC...
- 红帽Linux中安装mysql8详细步骤
-
注意:我写的解压路径和截图路径不一致,仅供参考先前往官网下载mysql8下载地址:https://dev.mysql.com/downloads/选择指定版本和系统下载命令...
- MySQL主从配置
-
主从原理MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步的。...
- mysql的主从搭建以及实现主从切换方法
-
主从搭建的方法:a.准备两台服务器...
- 一周热门
-
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
因果推断Matching方式实现代码 因果推断模型
-
git pull命令使用实例 git pull--rebase
-
git 执行pull错误如何撤销 git pull fail
-
面试官:git pull是哪两个指令的组合?
-
git fetch 和git pull 的异同 git中fetch和pull的区别
-
git pull 和git fetch 命令分别有什么作用?二者有什么区别?
-
git pull 之后本地代码被覆盖 解决方案
-
还可以这样玩?Git基本原理及各种骚操作,涨知识了
-
git命令之pull git.pull
-
- 最近发表
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)