个人的小项目mysql_mgr_test开放了

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:    之前写了一版简单的shell脚本,能够实现简单的MySQL Group Replication环境的测试快速部署,大概就1分多钟的时间就快速创建多个实例节点,如果要学习尝鲜MGR的话还是推荐试试的。

   之前写了一版简单的shell脚本,能够实现简单的MySQL Group Replication环境的测试快速部署,大概就1分多钟的时间就快速创建多个实例节点,如果要学习尝鲜MGR的话还是推荐试试的。

   自己也手工测试过几次,还能用。说不上高大上,但是能够基本满足需求,今天又抽空完善了一下,在一个全新的环境中部署了一把,还算比较顺利。

    我简单说说这个小的项目,也希望大家齐心协力,把它逐步完善起来。

     如果要实现快速部署MGR,下面是一些基本的步骤。

1. 首先需要下载MySQL软件,配置/etc/hosts文件,下载二进制包都不需要什么安装了,直接解压放入指定的目录即可,比如/usr/local/mysql。目前最新的版本是官方的5.7.19
假设 10.127.1.18是服务器的IP,那么在/etc/hosts里面就尤其需要注意,把它务必配置好。
比如下面的/etc/hosts的文件内容:
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.127.1.18  mysqltestdb

2. 有一个统一的配置文件 auto.cnf ,在这个配置文件里配置MySQL软件的路径,数据文件的路径即可。
这些没有固定的内容,都是根据你的需求和具体的配置来定。比如auto.cnf的内容如下:
export base_dir=/usr/local/mysql
export base_data_dir=/home/data

3. 配置节点列表,这是MGR部署关键的一个配置文件了。
每个节点的配置分为4部分:节点的端口,节点的别名,节点的内部端口,节点的角色。
节点的端口是数据库提供数据访问的端口,节点的别名,因为是在同一台服务器上模拟测试,所以需要标识不同节点的名字。
节点的内部端口,这是MGR在各个节点之间的通信端口,最后是节点的角色,如果为Y就是提供读写权限,负责,只有读权限。
如果是单主模式,最后的标识位第一个是Y,其他都为N
24801 s1  24901 Y
24802 s2  24902 N 
24803 s3  24903 N 
24804 s4  24904 N
24805 s5  24905 N
如果是多主模式,则节点的角色都要标记为Y
24801 s1  24901 Y
24802 s2  24902 Y 
24803 s3  24903 Y 
24804 s4  24904 Y
24805 s5  24905 Y 

4. 运行脚本init.sh 不需要输入任何的参数。
这是最耗时的步骤,也是最核心的脚本。


5. 使用check_node.sh 脚本可以检查各个节点的状态,,输入参数为节点别名,比如s1
   使用start_node.sh 脚本可以启动指定的节点,,输入参数为节点别名,比如s1
   使用reset_node.sh 脚本可以在节点需要重新加入集群的时候使用,输入参数为节点别名,比如s1
   使用stop_node.sh  脚本可以停止指定的节点,输入参数为节点别名,比如s1
   使用conn_node.sh  脚本可以连接到指定的节点,输入参数为节点别名,比如s1   
比如我要检查节点s2的状态,是否为oline,是否应用数据正常,可以使用check_node.sh来查看。
sh check_node.sh s2

6. 感谢使用,有问题反馈,可以提交issue或者邮件给我jeanrock@126.com



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
前端开发 IDE Java
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
164 0
|
13天前
|
监控 数据可视化 安全
智慧工地SaaS可视化平台源码,PC端+APP端,支持二开,项目使用,微服务+Java++vue+mysql
环境实时数据、动态监测报警,实时监控施工环境状态,有针对性地预防施工过程中的环境污染问题,打造文明生态施工,创造绿色的生态环境。
11 0
智慧工地SaaS可视化平台源码,PC端+APP端,支持二开,项目使用,微服务+Java++vue+mysql
|
1月前
|
Java 关系型数据库 MySQL
【项目】手把手带你用 SpringBoot、Uniapp、MySql 开发一个简单的活动报名项目
【项目】手把手带你用 SpringBoot、Uniapp、MySql 开发一个简单的活动报名项目
137 1
|
2月前
|
Java 关系型数据库 MySQL
docker 部署springboot项目,连接mysql容器
docker 部署springboot项目,连接mysql容器
96 0
|
3月前
|
SQL 关系型数据库 MySQL
面试题:mysql在项目里有没有用到索引,哪些字段用了,哪些字段为什么不用
面试题:mysql在项目里有没有用到索引,哪些字段用了,哪些字段为什么不用
23 0
|
3月前
|
NoSQL 关系型数据库 MySQL
实习里项目使用mysql、mongodb、redis都用来干什么
实习里项目使用mysql、mongodb、redis都用来干什么
47 0
|
3月前
|
JavaScript 关系型数据库 MySQL
基于JavaWeb和mysql实现网上书城前后端管理系统(源码+数据库+开题报告+论文+答辩技巧+项目功能文档说明+项目运行指导)
基于JavaWeb和mysql实现网上书城前后端管理系统(源码+数据库+开题报告+论文+答辩技巧+项目功能文档说明+项目运行指导)
|
4月前
|
关系型数据库 MySQL Java
(详解与使用)Sharding-JDBC通过mysql主从复制来进行项目优化
(详解与使用)Sharding-JDBC通过mysql主从复制来进行项目优化
33 0
|
4月前
|
Java 关系型数据库 MySQL
【从0配置JAVA项目相关环境1】jdk + VSCode运行java + mysql + Navicat + 数据库本地化 + 启动java项目
【从0配置JAVA项目相关环境1】jdk + VSCode运行java + mysql + Navicat + 数据库本地化 + 启动java项目
112 0
|
4月前
|
SQL 关系型数据库 MySQL
项目4总结:MySQL数据表的检索
项目4总结:MySQL数据表的检索
59 0