数据库高可靠,轻松解决事务丢失问题

天翼云开发者社区
• 阅读 452

数据库的发展始终与用户需求变迁紧密相关。近年来,数据上云的趋势愈演愈烈,越来越多的企业选择把数据库迁移上云,这对云上数据库的产品性能,尤其在可靠性和安全性方面,提出了更高的要求。

而现实情况是,企业在云上使用自建数据库的过程中,由于原生开源MySQL的事务能力并不完善,事务可能面临丢失的风险,难以保证事务执行前后数据的可靠性和一致性。事务丢失给企业造成的损失,也加大了部分企业对数据上云的担忧。 数据库高可靠,轻松解决事务丢失问题

什么是“事务”?事务是指数据库中对数据进行一个或者多个复杂操作的基本单元,它承载着业务持续发展的使命,不容有失。

以购物场景为例,一个完整的购物过程通常包括买家付钱、卖家交付商品并在库存中减掉本次出售商品的数量、卖家收款三个操作。这三个操作是独立的,但是这三个操作需要都完成后,整个购物操作才算完成。这样的三个操作,就可以看作是一个事务,即一个事务中包含很多操作,要么都完成,要么都不完成。数据库中事务的丢失,可能会导致很多复杂数据的丢失。

天翼云关系型数据库MySQL具有高可靠特性,基于主备架构,能够在最大程度兼顾主库效率的同时保证主库崩溃时服务不中断,做到事务零丢失,进而保证企业业务稳定连续,将故障影响降至最小,为企业排忧解难。

精准判断主库崩溃时的复制状态 天翼云关系型数据库MySQL半同步复制,是基于状态通道和时间戳的高可靠特性来实现的,其总体工作流程为: 数据库管控平台高可用模块(HA)保存主库末位的复制状态和时间戳,备实例保存主库末位的复制状态和时间戳,然后通过比较二者的状态与时间戳值来精准判断主库崩溃时的复制状态。 从原理上来看是相对简单的,但在落地时并不容易,天翼云团队通过大量实践验证做到了精准判断。 数据库高可靠,轻松解决事务丢失问题

根据主库崩溃状态自行恢复服务 此前,天翼云关系型数据库MySQL半同步复制状态下绝大多数情况是同步复制状态,极少数情况下(如执行大事务时)会转换到异步复制状态,然后自动转换回同步复制状态。

现在,天翼云关系型数据库MySQL半同步复制凭借高可靠特性能够精准判断主库崩溃时的复制状态,并依此按照以下四种情况准确恢复服务: 1.在同步复制状态下主库发生崩溃。此时先尝试拉起主库,拉起主库成功,保证事务不丢失,在这个过程中可实现秒级恢复服务。

2.在同步复制状态下主库发生崩溃,且拉起主库失败。此时主备数据一致,会将服务平滑切换到备库,保证事务不丢失,并且秒级恢复服务。

3.在异步复制状态下主库发生崩溃,不能切换到备库,拉起主库成功,保证事务不丢失,在这个过程中可以实现秒级恢复服务。

4.在异步复制状态下主库崩溃后,不能切换到备库,且不能拉起主库,会在原来的数据上恢复主库,保证事务不丢失,在这个过程中可以实现分钟级恢复服务。

天翼云关系型数据库MySQL半同步复制高可靠特性,能最大程度保证主库效率,是因为主库的事务提交完全依赖于备库的信号,而备库把事务写入中继日志后也会立即返回一个ACK(即确认字符),没有强同步复制备库回放事务带来的主从时延。

场景应用 机房故障断电 用户使用天翼云关系型数据库MySQL,主备机跨AZ(可用区)部署,如果主库所在的AZ(可用区)机房故障断电不可用,主库因此发生故障,用户服务发生中断,此时天翼云关系型数据库MySQL凭借高可靠特性可以使服务在秒级完成主备切换,并且做到服务与中断前的数据视图完全一致,不会有任何事务丢失。

大事务执行期间数据库宕机 用户使用天翼云关系型数据库MySQL半同步复制模式时,当主库正在执行大事务,并且复制状态从同步复制转换到异步复制时,主库突然宕机,服务因此被迫中断,天翼云关系型数据库MySQL主库会在数秒内被拉起并对外提供服务,并且与中断前的数据视图完全一致,不会有任何事务丢失。

天翼云关系型数据库MySQL的高可靠特性在保障事务不丢失的前提下,能够同时做到秒级恢复(极端情况下,分钟级恢复),从而确保主备实例的数据一致性,极大提高了数据可靠性。这是天翼云为企业数据保驾护航,践行“致力于打造企业级数据底座”的有力体现。

点赞
收藏
评论区
推荐文章
艾木酱 艾木酱
3年前
MemFireDB获华为云“鲲鹏云服务”和“Stack 8.0”兼容性认证
近日,敏博科技自研的MemFireDB分布式关系数据库系统与华为云鲲鹏云服务、华为云Stack8.0完成兼容性认证,正式成为华为云鲲鹏凌云合作伙伴。本次测试内容涵盖产品功能、性能、可靠性、安全性、合规性等方面,重点验证了高并发、大容量的服务能力,分布式ACID事务、在线平滑弹性伸缩、跨数据中心部署等能力。面向高并发在线事务系统、海量数据存储、数据备份容灾等
LosAngel LosAngel
3年前
golang实现MySQL数据库事物的提交与回滚
MySQL事务主要用于处理操作量大,复杂度高的数据。在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务。事务用来管理insert,update,delete语句,事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行。一般来说,事务是必须满足4个条件(ACID)::原子性(Atomicit
Wesley13 Wesley13
3年前
MySQL 乐观锁和悲观锁
前言  1)在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和一致性以及数据库的一致性。  2)加锁是为了解决更新丢失问题更新丢失  两次更新同时进行,后一次更新覆盖了前一次更新的情况,更新丢失是数据没有保证一致性导致的。事务A查询余额,
Wesley13 Wesley13
3年前
Mysql系列第十五讲 事务详解
Mysql系列第十五讲什么是事务?事务的几个特性(ACID)Mysql中事务操作savepoint关键字只读事务事务中的一些问题事务的隔离级别关于隔离级别的选择什么是事务?数据库中的事务是指对数据库执行一批操作,这些操作最终要么
Wesley13 Wesley13
3年前
MySql学习18
本篇讲述数据库中非常重要的事务概念和如何使用MySQL命令行窗口来进行数据库的事务操作。下一篇会讲述如何使用JDBC进行数据库的事务操作。  事务是指数据库中的一组逻辑操作,这个操作的特点就是在该组逻辑中,所有的操作要么全部成功,要么全部失败。在各个数据具有特别紧密的联系时,最好是使用数据库的事务来完成逻辑处理。  例如路人甲A给路人甲B转账
Wesley13 Wesley13
3年前
DRDS 柔性事务漫谈
_摘要:_ 在阿里巴巴,“柔性事务”已经是重构分布式事务的标准方法,覆盖了商品、交易、支付各个大规模应用场景,并且经受了双十一的考验。DRDS 是阿里云提供的一款分布式数据库产品,它的原型是在阿里内部使用了10年的数据库中间件TDDL。DRDS在TDDL提供的数据切分和SQL路由能力上,强化了分布式查询,事务和水平扩容能力。
Wesley13 Wesley13
3年前
Mysql事务,并发问题,锁机制
1、什么是事务事务是一条或多条数据库操作语句的组合,具备ACID,4个特点。原子性:要不全部成功,要不全部撤销隔离性:事务之间相互独立,互不干扰一致性:数据库正确地改变状态后,数据库的一致性约束没有被破坏持久性:事务的提交结果,将持久保存在数据库中2、事务并发会产生什么问题1)第一类丢失更新:在没有事务隔离的情况下,两个事务都同时
一文读懂天翼云自研 TeleDB 数据库五大关键特性
数字时代下,随着企业向数字化、在线化、智能化高速演进,存储需求呈指数级增长,业务也面临着更多热点和突发流量带来的挑战,这就对数据库安全可靠、超高性能、易运维性提出了更高要求。天翼云自研TeleDB数据库采用云原生架构,具备即开即用、稳定可靠、安全运行、弹性伸缩、轻松管理、经济实用等特点,可为用户提供稳定可靠的企业级数据库服务,帮助企业圆满解决上述问题。与
高并发、高可用、弹性扩展,天翼云护航企业云上业务
数字时代,云计算行业进入繁荣发展阶段,越来越多企业上云用数赋智,以提升自身服务力与竞争力,但与此同时,企业云上业务也面临着一定的挑战,业务连续性、高可用性较难保证。由于光缆被挖断,软件出现无法登录、网络异常等问题;由于遭受不明攻击,某订票网站及APP陷入瘫痪状态......各种突发原因导致服务中断、数据丢失的事件时有发生,给企业造成经济、名誉损失,因此,企业
云数据库MySQL多人协同开发实践
随着云计算技术的快速发展,云数据库作为云计算的重要组成部分,为企业提供了高效、灵活和可靠的数据存储和管理服务。其中,MySQL作为一款流行的开源关系型数据库,在云数据库领域具有广泛的应用。多人协同开发是软件开发过程中的重要环节,本文将探讨云数据库MySQL多人协同开发的实践。
天翼云开发者社区
天翼云开发者社区
Lv1
天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。
文章
696
粉丝
15
获赞
40