位置: 编程技术 - 正文

MySQL PXC构建一个新节点只需IST传输的方法(推荐)

编辑:rootadmin

推荐整理分享MySQL PXC构建一个新节点只需IST传输的方法(推荐),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

需求场景:原有的pxc环境数据量已经比较大,新买的服务器要加入此集群中,如何让其用IST的方式传输,而不是SST.

PXC传输数据有两种方式:

IST:Incremental State Transfer 增量同步SST:State Snapshot Transfer 全量同步

IST 发生的条件:This is done using caching mechanism on nodes (即只发生在之前集群里的节点数据还有在缓存中)

判断方法:

此值小于新开节点的seqno:

所以我们的思路即通过备份一个集群中节点的数据,恢复到新节点上,并伪造一个grastate.dat,来记录备份数据的seqno,这样当新节点启动时就会自动用IST的方法来进行,而不是SST(注意gcache.size应该有足够的容量来保证在备份及恢复这段时间内新产生的数据都被缓存到)

如下为这次的操作步骤:

node:..1. --已经存在的集群节点node:..1. --将要加入的集群节点

step1:启动新的集群中的第一个节点

/usr/local/pxc_/bin/mysqld_safe --defaults-file=/home/mysql/pxc.cnf --ledir=/usr/local/pxc_/bin/ --wsrep-new-cluster &

配置文件如下:

连接进去并创造更改一些数据:

step2:用innobackupex备份node数据:

step3:此时我们在node上再加入一些数据:

step4:将备份的数据传输到node上并恢复:

step5:找出Xid的位置

MySQL PXC构建一个新节点只需IST传输的方法(推荐)

有两种方法

方法一:查看文件xtrabackup_galera_info

[root@zejin I]# cat xtrabackup_galera_info6cdc-f-e6--ae4d7eeed2:8

方法二:通过binlog位置来查找:

[root@zejin I]# cat xtrabackup_binlog_infolog_bin. 即备份时的备份点位置为log_bin.

我们再去主库查找此binlog对应的xid

[root@zejin I]# mysqlbinlog -vv log_bin. | grep Xid# 9:: server id end_log_pos CRC 0xb3e Xid = 7# :: server id end_log_pos CRC 0xf Xid = 9# :: server id end_log_pos CRC 0x8db2aa Xid =

发现竟然没有此位置的xid,原因在于我们在最上面更新mysql.user表了,而此表是myisam表,不会有Xid的记录,这种情况时我们根据上下位置把Xid设置为8

step6:在node上伪造一个grastate.dat文件(从node上复制过来,更改下seqno即可):

# GALERA saved stateversion: 2.1uuid: 6cdc-f-e6--ae4d7eeed2seqno: 8cert_index:

step7:启动新节点:

成功用IST来恢复了。

step8 登陆新节点node,查看数据是否正常:

发现数据也已经全部同步完成。

step9:对比SST时的日志输出:

可以看到里面有大量的removed操作,它会删除数据文件夹里面的所有文件,再从主节点那里通过SST获取数据官方说明:

至此我们完成了pxc环境下避免新节点加入时需要进行SST的方法,在数据量大时SST将会占用大量的资源,配置的gcache.size足够容纳从备份到恢复此时间段内主节点产生的数据量,建议通过业务低峰期时通过脚本来实现此新节点加入操作。

以上这篇MySQL PXC构建一个新节点只需IST传输的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

Mysql GTID Mha配置方法 Gtid+Mha+Binlogserver配置:1:测试环境OS:CentOS6.5Mysql:5.6.Mha:0...1.mysql1M..1.mysql2S..1.mysql3S2Mhamanage、Binlogserver2:配置/etc/my.cnf相关参

innodb_flush_method取值方法(实例讲解) innodb_flush_method的几个典型取值fsync:InnoDBusesthefsync()systemcalltoflushboththedataandlogfiles.fsyncisthedefaultsetting.O_DSYNC:InnoDBusesO_SYNCtoopenandflushthelogfiles,andfsync()toflushth

innodb_index_stats导入备份数据时报错表主键冲突的解决方法 故障描述percona5.6,mysqldump全备份,导入备份数据时报错Duplicateentry'hoc_log-item_log_-PRIMARY-n_diff_pfx'forkey'PRIMARY'故障原因查看了下这个主键应该是MySQL系

标签: MySQL PXC构建一个新节点只需IST传输的方法(推荐)

本文链接地址:https://www.jiuchutong.com/biancheng/349957.html 转载请保留说明!

上一篇:MySQL5.7不停业务将传统复制变更为GTID复制的实例(mysql停不掉)

下一篇:Mysql GTID Mha配置方法(mysql id in)

  • 非税收入票据能否税前扣除
  • 购进货物用于在建工程要交增值税吗
  • 小规模开票给一般纳税人避税合法吗
  • 是否退还投标文件
  • 变更许可证情况说明书模板
  • 收到运输发票需要开票吗
  • 跨年的发票可以冲红重开吗
  • 2018手写发票何时失效?
  • 工商年检的社保基数怎么填
  • 为什么增值税发票税率是1%
  • 总分机构账务处理
  • 外商投资企业要交房产税吗
  • 减税降费在中国 应形成制度性
  • 所得税退费怎么操作
  • 公对公转账备注信息填错了怎么办
  • 个人所得税纳税比例
  • 股票回购会计处理
  • 公司购买电视
  • 酒店水电费分录
  • 成本类科目有哪四个
  • 如何在Excel中合并计算
  • 调增应纳税所得额季度申报表怎么填
  • type3插件
  • 中投公司投资的股票
  • win7旗舰版叫啥
  • PHP:finfo_buffer()的用法_fileinfo函数
  • 非货币性资产交换补价大于25%的会计处理
  • 安装windows(install windows)
  • 查补的增值税账务处理
  • 第十届蓝桥杯大赛个人赛省赛结果
  • js删除
  • ufw 设置
  • 帝国cms移动端
  • 置顶文章
  • 工商银行代发工资多久到账
  • php 清除缓存
  • 企业提前还贷为什么违约
  • 股本和库存股有什么区别
  • phpcms插件
  • 企业合并属于非企业吗
  • 一般商品销售的会计分录
  • 月度合并报表与年度合并区别
  • mysql的常用命令
  • 一般纳税人销售旧货
  • 开发票给别人该如何收取税点?
  • 银行承兑汇票和银行汇票的区别
  • 银行承兑汇票到期日后多久可以承兑
  • 递延收益为什么不影响利润总额
  • 现金余额出现负数的原因
  • 低值易耗品属于资产类账户吗
  • 运费险三件衣服分3个快递寄出
  • 民间非营利组织会计制度
  • 每个月房租
  • 研发费用的会计处理对公司经营成果的影响
  • 企业转让固定资产发生的费用
  • 产品研发费用的计算公式
  • 生产成本怎么结转主营业务成本分录
  • 获取sql表达式时错误
  • sql教程
  • 在centOS 7安装mysql 5.7的详细教程
  • mac上怎么取消itunes自动续费
  • freebsd服务器搭建
  • 注册表干嘛用
  • ubuntu命令行中文乱码怎么解决
  • win10dll丢失
  • CentOS系统中与时间的相关命令详解
  • win7系统卸载360
  • 可用分区az
  • iptables入门
  • Win7旗舰版电脑亮度怎么调节?
  • 举例说明如何为教学搭建支架
  • android:ellipsize="marquee"
  • jquery自定义的方法有哪些
  • node用什么写的
  • js canvas绘制图片
  • dom教学
  • Python中字符串的索引
  • 手游炫酷
  • 广东省国家税务总局稽查局局长
  • 纳税人有什么影响
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设