43、ProxySQL:数据库高可用了,应用高可用怎么做

你好,我是俊达。 通过前面几讲,我们知道了怎么使用MySQL的数据复制技术,来实现数据库层面的高可用。但是对于应用系统,当后端的MySQL发生高可用切换时,应该怎么处理? 这里有几种可选的方案。 应用通过域名访问数据库。域名指向主库,当后端数据库发...

MySQL运维实战课

42、MySQL 8.0 组复制技术的应用(下)

你好,我是俊达。 为了实现事务数据的强一致性,group_replication插件在事务的处理流程上,加入了一些特殊的处理逻辑。这一讲中,我们来大致地了解下组复制的一些实现细节。当然,由于组复制的实现比较复杂,这里只能介绍部分实现逻辑。 MGR架构...

MySQL运维实战课

41、MySQL 8.0 组复制技术的应用(上)

你好,我是俊达。 数据复制技术是构建MySQL高可用环境的基础,但无论是异步复制,还是半同步复制,在理论上都无法保证极端情况下数据完全一致。MySQL 8.0中的组复制技术(MGR,MySQL Group Replication),使用了基于Paxo...

MySQL运维实战课

40、MySQL 8.0 Clone 插件的应用和内部原理

你好,我是俊达。 前面我讲过,搭建一个备库,有一个核心的步骤是同步源库的初始状态。逻辑备份(比如使用mysqldump)和物理备份(比如使用xtrabackup)都可以用来初始化备库。MySQL 8.0中,还引入了Clone插件,也可以用来初始化一个...

MySQL运维实战课

39、数据误操作了如何快速恢复

你好,我是俊达。 上一讲中,我们知道了如何使用Xtrabackup来备份数据库和恢复数据库。不管是全量备份,还是增量备份,实际上都只能将数据库恢复到一个固定的时间点,这个时间点就是Xtrabackup备份完成的那个时刻。 但是在现实中,数据恢复的要求...

MySQL运维实战课

38、为什么有了备库还要做备份兼谈 Xtrabackup 的使用

你好,我是俊达。 前面几讲,我花了比较多的篇幅介绍MySQL的数据复制。假设你的数据库都已经做了备库,有了完善的监控,为什么还要做数据库备份呢? 很重要的一个原因,是备库通常都和主库保持同步,如果在主库上执行了一个误操作,或者由于程序的Bug或外部攻...

MySQL运维实战课