个人的小项目mysql_mgr_test开放了

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:    之前写了一版简单的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



相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
关系型数据库 MySQL Java
【MySQL+java+jpa】MySQL数据返回项目的感悟
【MySQL+java+jpa】MySQL数据返回项目的感悟
115 1
|
关系型数据库 MySQL 数据挖掘
轻松入门MySQL:深入理解MySQL聚合函数,实战进销存项目中的应用与技巧(8)
轻松入门MySQL:深入理解MySQL聚合函数,实战进销存项目中的应用与技巧(8)
148 0
|
5月前
|
Java 关系型数据库 MySQL
在Linux平台上进行JDK、Tomcat、MySQL的安装并部署后端项目
现在,你可以通过访问http://Your_IP:Tomcat_Port/Your_Project访问你的项目了。如果一切顺利,你将看到那绚烂的胜利之光照耀在你的项目之上!
310 41
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
8月前
|
人工智能 JavaScript 关系型数据库
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
263 14
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
|
JavaScript 关系型数据库 MySQL
创建nodejs项目并接入mysql,完成用户相关的增删改查的详细操作
创建nodejs项目并接入mysql,完成用户相关的增删改查的详细操作
203 0
|
10月前
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
622 26
|
11月前
|
分布式计算 关系型数据库 MySQL
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型 图像处理 光通信 分布式计算 算法语言 信息技术 计算机应用
211 8
|
12月前
|
SQL JavaScript 关系型数据库
node博客小项目:接口开发、连接mysql数据库
【10月更文挑战第14天】node博客小项目:接口开发、连接mysql数据库
|
前端开发 Java 数据库连接
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
本文是一份全面的表白墙/留言墙项目教程,使用SpringBoot + MyBatis技术栈和MySQL数据库开发,涵盖了项目前后端开发、数据库配置、代码实现和运行的详细步骤。
276 0
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学

推荐镜像

更多