图形化探索:快速改造单实例为双主、MGR、读写分离等架

单机GreatSQL/MySQL调整架构为多副本复制的好处有哪些?为什么要调整?

file

  1. 性能优化:如果单个GreatSQL服务器的处理能力达到瓶颈,可能需要通过主从复制、双主复制或MGR,以及其他高可用方案等来提高整体性能。通过将读请求分发到多个服务器,可以大大提高并发处理能力。
  2. 高可用性:如果您的应用程序不能接受服务中断,那么多副本可以帮助您实现高可用性的故障切换。当主服务器发生故障时,可以快速切换到从服务器或另一个主服务器,以保持服务的连续性。
  3. 读写分离和业务数据测试:单机GreatSQL在做一致性备份时,往往对性能和负载产生压力,主从、多主、或MGR可以选择从节点来备份。数据恢复或者测试,可以优先在从服务器进行数据回放测试等。

请查看手动部署介绍: GreatSQL从单机到MGR扩展纪实 https://mp.weixin.qq.com/s/ewIx_avO5R6GDGmyDmPMLg

适用场景:

1、单机GreatSQL/MySQL改造为主从或者双主复制

2、单机GreatSQL/MySQL改造为MGR组复制

3、GreatSQL/MySQL主从改造为MGR组复制

4、基于备份做GreatSQL/MySQL数据库升级测试

具体步骤

通过GreatADM可视化的方法,屏蔽手动命令操作的复杂度,快速完成单实例的向多主、多副本的架构分钟级的调整升级。

场景支持:支持纳管的实例的架构改造,或者数据库软件版本的升级功能。

思路如下:通过sysbench压入单机数据,通过备份单机数据,恢复到新的架构中,使用sysbench直接连接新的架构做压测,查看是否可正常运行验证数据可用性。(本次演示采用GreatSQL单机企业版本操作)

步骤如下:

1、使用GreatADM针对单实例做全量备份

2、选择备份的数据和确定要改造或升级的版本

3、选择不同架构和软件包构建新架构(本次演示单机向双主、MGR的变更)

4、恢复数据完成新架构改造

5、sysbench压测查数据可用性

环境信息如下:

数据库主机IP实例端口目标架构主机IP实例端口
单机172.17.134.683307主从、双主、双主多从172.17.134.60/613307
单机172.17.134.683307MGR(1台主机3实例)172.17.134.613307/3308/3309
图形化工具GreatADM-6.0版本
物理备份工具xtrabackup-8.0.32

添加2台主机172.17.134.60/61到GreatADM中,如下

file

file

准备工作:sysbench创建压测数据到单实例

file

登录数据库,创建sysbench测试数据50张表,每表1w行数据。

$ sysbench --test=oltp_read_write.lua --mysql-user=greatdb --mysql-password='xxxxx' --mysql-host=172.17.134.68 --mysql-port=3307 --mysql-db=sysbench --threads=10  --report-interval=1 --tables=50  --table-size=10000 --time=60  prepare

通过SQL窗口查看对应的表信息

file

完成测试数据的创建,接下来进行单节点的备份操作。

一、做数据库全量备份

使用GreatADM针对单实例做全量备份,选择【备份管理】执行单节点的全量备份,在备份之前首先需要配置备份方式。因为GreatADM支持HDFS、FTP、COS对象存储、LOCAL本地、远端备份服务器5种类的备份集存储方式。

file

这里我们选择【LOCAL本地存储】即将数据直接备份放置在数据库所在的主机,指定本地路径下。【本地路径】是最终备份集存储的路径,我们命名为:/backup,需要在数据库的服务器上创建目录,并授权。

file

创建备份集存储的目录,使用root创建,并调整目录权限,保证和添加服务时创建的【管理用户】,同一个属组,确保GreatADM以greatsql普通用户备份时,有权限写入/backup。

$ mkdir /backup ;  
$ chown greatsql.greatsql  /backup;

接下来,执行【手动备份】并配置备份项。

file

GreatADM支持多种数据库架构的备份,且可以按照用户需求,选择备份不同项目的数据库,以及按需选择数据库主节点、或从节点备份。

file

在配置项中,同时支持【压缩备份】,【加密备份】,【并行备份】,以及备份超时平台层的【超时提醒】消息等

file

执行备份,日志输出如下 ,整个备份分为4个阶段即

【收集信息】--收集数据库的版本和数据文件路径等信息

【备份预检查】--检查备份工具和数据库版本是否匹配,备份配置项是否有效

【执行备份】--执行执行一致性的物理热备

【上传到存储】--如果配置远程网络存储,则进行备份集的网络传输。

file

完成备份,如下生成的备份记录

file

完成备份之后,可点击【备份详情】查看本次备份的配置信息等。

操作系统路径下对应的备份集,与数据库实例同在一台服务器的不同路径下。

file

二、恢复为双主复制架构

基于备份做架构变更,基于全量物理备份做数据的恢复,和新架构的变更创建。基于全量备份恢复导172.17.134.60、61两台主机,来改造成新的主从,或者双主架构。步骤如下:

首先选中【序号1】刚刚完成的【单机601全量备份】,点击【备份恢复】选项

file

弹出要恢复为哪种架构,这里目前可选的有4种,同时支持2种恢复架构的类型,即【恢复物理机数据库】和【资源池方式】也就是资源隔离方式。 这里,我们选择物理机恢复出双主架构。点击【主备副本】选择【恢复物理机数据库】

file

接下来配置恢复出的新架构,属于哪个【项目】,所选择的【数据库软件包版本】,以及备份工具包,GreatSQL兼容开源的xtrabackup,这里我们就默认选择GreatADM已经上传的xtrabackup-8.0.32版本。主机选择172.17.134.60、172.17.134.61两台主机。鉴于之前部分传统的企业客户,有多个副本的需求场景下,GreatADM提供了双主下,再次扩展副本的能力。如果在双主复制的架构下,仍想扩展1个从副本,则可以在添加节点之后,选择【添加从节点】选项,扩展副本数

file

默认允许用户混合主从副本安装在同一台物理主机上,用端口做区分如下示意图,则可以在双主下各创一个从副本。形成双主双从,这里仅作演示。

file

实际我们仍按双主架构来进行架构恢复。进入新架构的部署预检查页面,如图,主要是涉及操作系统配置标准化、规范化、依赖包等检查。

file

通过之后进行下一步,完成新架构的初始化,并在初始化之后,做数据的恢复。

file

完成架构调整的双主结构拓扑如下

file

实例属性信息如下

file

同时保留了原始节点,此时可将原始的单机移除,到此完成架构的改造和变更。数据中的用户名、密码等和原始单机数据库完全相同一致。可直接点点击【登录】验证。

file

完成单机改造为新的双主复制结构。

三、恢复为MGR架构

同样,选择单机601的备份集, 删除之前172.17.134.60、61的数据库,释放主机资源。之前鉴于项目中有用户主机资源不足,考虑主机采用多实例混合部署在1台上的情况,我们顺便测下GreatADM是否支持重复利用主机,混合部署多个实例。

file

选择【备份恢复】,恢复架构中,选择【paxos高可用复制】,选择【物理数据库】

file

进入paxos配置项中,我们仍选择【default】默认项目,对应的软件包版本可选择升级的新版本,在做架构改造时,同时进行数据库的版本升级工作。此处,我们重复使用172.17.134.61这台主机,分别使用3307、3308、3309三个端口来区分3个实例。如下:

file

预检查之后的拓扑图预留和端口信息如下:

file

安装部署过程和日志信息如下:

file

安装之后拓扑如下:

file

完成单机向paxos高可用(组复制)的改造和数据恢复。查看当前172.17.134.61主机的运行状态和负载,也验证了GreatADM支持混合部署多实例到1台主机。

file

file

四、验证数据的可用性

使用sysbench压测新恢复的架构,对应的sysbench库的表等可直接压测使用,无数据异常。

$ sysbench --test=oltp_read_write.lua --mysql-user=greatsql --mysql-password='xxxxx' --mysql-host=172.17.134.61 --mysql-port=3307 --mysql-db=sysbench --threads=10  --report-interval=1 --tables=50  --table-size=10000 --time=60  run

file

五、总结

改造的意义:如果您需要存储和处理大量数据,且读写负载较高,单个MySQL服务器可能无法满足需求,或为了满足跨地域访问的需求,可以将单机数据库,改造成可跨多个数据中心采用异步复制、或半同步、以及强同步等方式,既可以保证数据库的多副本容灾,又可提升业务的读写效率,规避了单点故障对业务的影响和负载。

GreatADM提供的能力和价值:且在改造升级过程中,借助GreatADM管理平台,图形化改造,大大降低了架构改造的难度和效率。避免DBA手动黑屏命令方式的操作的繁冗复杂的操作命令,减少业务停机时长,同时释放人工操作的压力。

Enjoy GreatSQL :)

关于 GreatSQL

GreatSQL是适用于金融级应用的国内自主开源数据库,具备高性能、高可靠、高易用性、高安全等多个核心特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。

相关链接: GreatSQL社区 Gitee GitHub Bilibili

GreatSQL社区:

image

社区有奖建议反馈: https://greatsql.cn/thread-54-1-1.html

社区博客有奖征稿详情: https://greatsql.cn/thread-100-1-1.html

(对文章有疑问或者有独到见解都可以去社区官网提出或分享哦~)

技术交流群:

微信&QQ群:

QQ群:533341697

微信群:添加GreatSQL社区助手(微信号:wanlidbc )好友,待社区助手拉您进群。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/148271.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

zabbix的服务器端 server端安装部署

zabbix的服务器端 server 主机iplocalhost(centos 7)192.168.10.128 zabbix官网部署教程 但是不全,建议搭配这篇文章一起看 zabbixAgent部署 安装mysql 所有配置信息和Zabbix收集到的数据都被存储在数据库中。 下载对应的yum源 yum ins…

【Linux】非堵塞轮询

堵塞轮询: 堵塞轮询是我们最简单的一种等待方式也是最常应用的等待方式。 但是,一旦阻塞等待也就意味着我们当前在进行等待的时候,父进程什么都干不了。 非堵塞轮询: 其中非阻塞等待,是等待的一种模式, 在…

如何使用Imagewheel+内网穿透搭建私人图床实现公网访问

文章目录 1.前言2. Imagewheel网站搭建2.1. Imagewheel下载和安装2.2. Imagewheel网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar临时数据隧道3.2.Cpolar稳定隧道(云端设置)3.3.Cpolar稳定隧道(本地设置) 4.公网访问测…

【淘宝API】商品详情+搜索商品列表接口

淘宝商品详情API接口可以使用淘宝开放平台提供的SDK或API来获取。这些接口可以用于获取商品的详细信息,如标题、价格、描述、图片等。 以下是使用淘宝开放平台API获取商品详情的步骤: 注册淘宝开放平台账号,并创建应用,获取应用…

Sentinel 流控规则

Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 SpringbootDubboNacos 集成 Sentinel&…

下一代VPN工具:体验TailScale的简便和高效

目录 一、概要VPN 是什么?TailScale 是什么 二、使用1、注册2、下载安装3、 Windows4、Linux5、 Android6、测试 三、Nginx整合Tailscale做端口转发 一、概要 VPN 是什么? 看到 VPN 第一反应应该是翻墙,但 VPN 最初应该也是最普遍的用途应该…

重生奇迹mu圣导师加点

重生奇迹mu圣导师加点:要攻击高可以加力量,平衡系建议加点力量600~800,智力200~400,敏够装备要求,统帅1000,其余加体力。 圣导师靠加力量培养高攻圣导师不现实,建议玩家练魔,低级圣…

win10关闭讲述人、粘滞键功能的快捷键启动

简单记录下在win10关闭讲述人、粘滞键快速启动的快捷键,这两个功能对正常人没什么用。误触发很烦。 禁用讲述人 按windows键,输入“轻松使用设置”,点“讲述人”,如下图取消讲述人开关和快捷键的勾选。 禁用粘滞键 按windows…

算法笔记-散列

算法笔记-散列 hash算法的思想整数出现的个数字符串出现个数整数是否出现整数出现的个数2字符是否出现字符串出现的个数2-sum-hash字符串出现的次数集合求交集合求并集合求差hash算法的思想 散列方法的主要思想是根据结点的关键码值来确定其存储地址 以关键码值K为自变量,通过…

电子学会C/C++编程等级考试2021年03月(一级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:药房管理 随着信息技术的蓬勃发展,医疗信息化已经成为医院建设中必不可少的一部分。计算机可以很好地辅助医院管理医生信息、病人信息、药品信息等海量数据,使工作人员能够从这些机械的工作中解放出来,将更多精力投入真正的医…

【Java 进阶篇】JQuery 案例:优雅的隔行换色

在前端的设计中,页面的美观性是至关重要的。而其中一个简单而实用的设计技巧就是隔行换色。通过巧妙地使用 JQuery,我们可以轻松地实现这一效果,为网页增添一份优雅。本篇博客将详细解析 JQuery 隔行换色的实现原理和应用场景,让我…

测试员练就什么本领可以让自己狂揽10个offer

最近,以前的一个小徒弟又双叒叕跳槽了,也记不清他这是第几次跳槽了,不过从他开始做软件测试开始到现在已经有2-3年的工作经验了,从一开始的工资8K到现在的工资17K,不仅经验上积累的很多,财富上也实现了翻倍…

JS基础 查漏补缺

学习视频:黑马程序员 第五天——对象 方法和调用 数据行为性的信息称为方法,如跑步、唱歌等,一般是动词性的,其本质是函数。 方法是依附在对象上的函数 方法是由方法名和函数两部分构成,它们之间使用 : 分隔 方法是…

excel中用NORM.INV函数计算正态累积分布的逆

NORM.INV函数返回正态累积分布的逆。它的形式为NORM.INV(probability,mean,standard_dev)。 正态累积分布函数和正态概率密度函数互为逆。 参数说明: probability:对应正态分布的累积分布值。例如该值等于0.9,表示累积概率之和是0.9Mean&am…

硬件开发笔记(十一):Altium Designer软件介绍、安装过程和打开pcb工程测试

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/134405411 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬…

基础课3——客服中心现状

智能客服服务的对象就是客服中心,智能客服旨在帮助客服中心更好、更快地解决客户的问题。 1.客服中心的背景 随着数字化时代的到来,客户服务已经成为了企业中不可或缺的一部分。消费者对于客户服务的期望也在不断变化,他们不再满足于仅仅在…

【AI】将Python项目打包成Docker镜像的小实践

1.准备工作 可以本地运行的Python程序 这个因人而异,可以是Anaconda环境,也可以是本机运行的Python环境,确保python程序是可以正常运行的。Docker环境 Docker环境是打包镜像必需的,可以安装Docker Desktop for Windows&#xff0…

升级支持requests库更新:兼容最新urllib3版本及相关库

你是否经常在深夜加班,只为解决一个bug?有时候,我们为了工作的进展和质量,不得不牺牲自己的休息时间。然而,加班并不是没有尽头的,更不是因为我们体贴不够。其实,真正的体贴,应该是让…

Edge最新版本,关闭侧边栏,不需命令,更改设置就可

边栏展示 说明:Edge自动更新版本后(版本 119.0.2151.58),出现了侧边栏,看着很不舒服,效果如上图 修改: 1、在设置找到侧栏 2、点击Copilot后,展示的页面中会有始终显示边栏这一开…

Maven介绍及仓库配置

目录 一.Maven 1.介绍 坐标 仓库 1)中央仓库 2)本地仓库 3)私服 配置国内源 配置过程 二.Maven功能 2.项目构建 3.依赖管理 Maven Help插件 安装 ​使用 一.Maven 1.介绍 坐标 唯一的,通过以下代码的三个键值对确…
最新文章