热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MariaDB10SlaveCrash-Safe需转为GTID复制模式

之前写了一篇《MySQL5.6crash-safereplication》,但在Mariadb10.0.X和10.1.X上不支持relay_log_info_repository

之前写了一篇《MySQL5.6 crash-safe replication》 ,但在Mariadb10.0.X和10.1.X上不支持relay_log_info_repository = TABLE参数,官网建议用GTID复制模式代替传统复制模式,传统复制模式是不支持Slave Crash-Safe的。

wKiom1Xmr7WRLV1DAAUUod9tlpw045.jpg


在mysql库下,会有一张gtid_slave_pos表(在安装初始化时,就已经是innodb引擎)

START TRANSACTION;-- Statement 1
-- ...
-- Statement N
-- Update replication info
COMMIT;

这样sql线程执行完事务后,立即会更新gtid_slave_pos表,如果在更新过程中宕机,事务会回滚,gtid_slave_pos表并不会记录同步的点,下次重新同步复制时,从之前的POS点再次执行。


MariaDB 10默认是传统复制,如果转为GTID复制很简单,并不需要像MySQL5.6那样,要在Slave从库上设置log_slave_updates = 1(增加从库的IO压力),并重启数据库生效那么麻烦。MariaDB支持热切换GTID,你可以先以传统复制搭建主从,然后再热切GTID复制模式,如下图: 

wKioL1XmrouQsk9yAAKZFfQNFDo290.jpg

wKioL1XmrtGxO7l5AALI8ghWW8M548.jpg

通过几个简单的步骤,Slave从库就支持了Crash-Safe。


注:MHA0.56(最新版),还不支持MariaDB10的GTID复制模式,在故障切换时,还会以传统复制搭建主从,所以需要每次手工热切换下GTID模式。


参考官网:

wKiom1XmrfuwVqIiAAl72MkEipQ780.jpg



本文出自 “贺春D的技术专栏” 博客,请务必保留此出处http://hcymysql.blog.51cto.com/5223301/1690848


推荐阅读
  • 华为云openEuler环境下的Web应用部署实践
    本文详细记录了在华为云openEuler系统上进行Web应用部署的具体步骤,包括配置yum源、安装Apache、MariaDB、PHP及其相关组件,并完成WordPress的安装与配置过程。 ... [详细]
  • 在上一章【第三十九章:基于SpringBoot&Quartz完成定时任务分布式单节点持久化】中我们已经完成了任务的持久化,当我们创建一个任务时任务会被quartz定时任务框架自动持 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 了解如何快速搭建属于自己的个人博客,无需编程基础,适合Mac和Windows用户。通过本文,您将学会使用GitHub Pages和Hexo构建一个完全自主的在线空间。 ... [详细]
  • Eclipse 中 Maven 的基础配置指南
    本文详细介绍了如何在 Eclipse 环境中配置 Maven,包括环境变量的设置、Maven 插件的安装与配置等关键步骤,旨在帮助开发者顺利搭建开发环境。 ... [详细]
  • 利用Java与Tesseract-OCR实现数字识别
    本文深入探讨了如何利用Java语言结合Tesseract-OCR技术来实现图像中的数字识别功能,旨在为开发者提供详细的指导和实践案例。 ... [详细]
  • 近期,公司在构建新的交易系统时遇到了一个常见的问题——金额存储。由于涉及资金的操作需要高度的准确性,使用float类型进行金额计算可能会导致不可预见的误差。本文将深入探讨这一问题,并提供解决方案。 ... [详细]
  • Nagios可视化插件开发指南 —— 配置详解
    本文详细介绍了Nagios监控系统的配置过程,包括数据库的选择与安装、Nagios插件的安装及配置文件的解析。同时,针对常见的配置错误提供了具体的解决方法。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了Kettle资源库的基本概念、类型及其管理方法,同时探讨了Kettle的不同运行方式,包括图形界面、命令行以及API调用,并详细说明了日志记录的相关配置。 ... [详细]
  • 在CentOS 7上轻松安装Elasticsearch的JDBC插件
    本文介绍如何在CentOS 7操作系统中安装Elasticsearch (简称ES) 的JDBC插件,以实现与MySQL数据库的有效连接,特别强调了该方法对于增量数据同步的支持。 ... [详细]
  • 本文探讨了在Git子模块目录中运行pre-commit时遇到的错误,并提供了一种通过Docker环境解决此问题的方法。 ... [详细]
  • Linux环境下配置Subclipse访问SVN+SSH仓库的方法
    本文详细介绍如何在Linux操作系统中配置Subclipse,以便通过SSH协议安全访问SVN仓库。不同于常见的Windows配置指南,本文提供了针对Linux用户的详细步骤。 ... [详细]
  • 解决 SVNManager 中文路径乱码问题的方法
    在安装 MySQL 后,通过调整 my.cnf 文件中的字符集设置,可以有效解决 SVNManager 在处理中文路径时出现的乱码问题。 ... [详细]
author-avatar
书友70518356
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有