PXC增量恢复添加节点(IST)
绕开SST通过IST方式添加Node到Percona XtraDB Cluster
Gcache存储了所有的 writeset ,因此说这个集合的大小直接决定了允许其他节点宕机后多长时间内可以进行ist 同步。
对于大库,高并发环境建议通过备份+binlog建立大的DB节点,减少生产库抖动。
计算Gcache尺寸
show global status like 'wsrep_received_bytes';
show global status like 'wsrep_replicated_bytes';
select sleep(60);
show global status like 'wsrep_received_bytes';
show global status like 'wsrep_replicated_bytes';
| wsrep_received_bytes | 83976571 |
| wsrep_replicated_bytes | 0 |
[...]
| wsrep_received_bytes | 90576957 |
| wsrep_replicated_bytes | 800 |
每分钟数据写入:
(second wsrep_received_bytes – first wsrep_received_bytes) + (second wsrep_replicated_bytes – first wsrep_replicated_bytes)
(90576957 – 83976571) + (800 – 0) = 6601186 bytes or 6 MB per minute.
每小时数据写入:
6MB * 60 minutes = 360 MB per hour of writesets received by the cluster.
默认是128M,适当调大gcache可以减少SST情况的发生,因为gcache是内存映射文件,因此会占用内存,建议设置16G
服务器
premysql24103 10.2.24.103 节点1 主写
premysql24102 10.2.24.102 节点2
premysql24101 10.2.24.101 新加入pxc节点
1.在premysql24103用innobackupex 加--galera-info做完整备份,并且拷贝到premysql24101
备份命令 innobackupex --user=root --password=111111 --defaults-file=/etc/my.cnf --socket=/data/mysql/mysql.sock --galera-info --no-timestamp --stream=tar /data/mysql_bak 2>/data/mysql_bak/innobak.log | gzip 1>/data/mysql_bak/newpre_mysql_full_20151027.tar.gz
2.在premysql24101还原完整备份
并且查看新节点当前的事务号
命令/usr/local/mysql56cluster/bin/mysqld_safe --wsrep-recover
3.在premysql24103和premysql24102查看每个节点的gcache中保存的最小事务号。
执行show global status like 'wsrep_local_cached_downto';
确定节点1节点2在gcache中的事务号包含新节点的事务号,也就是节点1节点2在gcache中的事务号小于新节点的事务号。
4.如果premysql24103的事物号小于新节点
则从premysql24103 数据目录拷贝grastate.dat 到 premysql24101数据目录
查看premysql24101服务器的xtrabackup_galera_info文件确定事物号
修改premysql24101 的grastate.dat 文件的seqno: 事务号,
并且chown mysql:mysql grastate.dat 。
启动premysql24101
/etc/init.d/mysqld_3306 start --wsrep_sst_donor=10.2.24.103
PXC增量恢复添加节点(IST)的更多相关文章
- pxc增量恢复
解流 xbstream -x < fullbackup2.xbstream -C /data/fullbackup xbstream -x < fullbackup2.xbstream - ...
- (转)通过MySQL复制线程SQL_Thread加快增量恢复binlog
数据回档常常是使用全量备份+binlog增量实现的.而数据量很大的情况下,增量恢复binlog一直是一个苦恼的问题,因为恢复binlog速度十分慢,并且容易出错. 恢复binlog文件一般有两种方法: ...
- Oracle DataGuard主库丢失归档日志后备库的RMAN增量恢复一例
第一部分 问题描述和环境状态确认 ----1. 问题场景 Oracle DataGuard主库丢失archivelog,如何不重建备库完成同步? 在Oracle DataGuard主从同步过程中可能 ...
- JQuery 添加节点
Mark一段自己写的添加节点的代码 function reply2(){ $( "<div class=sec1-div5>"+"<div class= ...
- jquery 添加节点的几种方法介绍
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- js实现在末尾添加节点
在末尾添加节点: 1.获取ul标签 2.创建li标签 document.createElement("标签名称")方法 3.创建文本 document.createTextNode ...
- JavaScript案例二:在末尾添加节点
简单实现通过JavaScript来增加HTML节点 <!DOCTYPE html> <html> <head> <title>JavaScript在末尾 ...
- 向html中添加节点
简单: ①,js中: (function () { var box=document.querySelector("#box"); var con1=document.create ...
- 警惕rapidxml的陷阱:添加节点时,请保证变量的生命周期
http://www.cnblogs.com/chutianyao/p/3246592.html 项目中要使用xml打包.解析协议,HQ指定了使用rapidxml--号称是最快的xml解析器. 功能很 ...
随机推荐
- 洛谷P1353 USACO 跑步 Running
题目 一道入门的dp,首先要先看懂题目要求. 容易得出状态\(dp[i][j]\)定义为i时间疲劳度为j所得到的最大距离 有两个坑点,首先疲劳到0仍然可以继续疲劳. 有第一个方程: \(dp[i][0 ...
- Maven 打包报错,log4j版本导致
# 在执行打包的时候 mvn clean assembly:assembly # 发生上面的错误 ------------------------------ [INFO] Total time: 2 ...
- EasyExcel写入百万级数据到多sheet---非注解方式
EasyExcel是什么? 快速.简单避免OOM的java处理Excel工具 一.项目需求 从mongo库中查询数据,导出到excel文件中.但是动态导出的excel有多少列.列名是什么.有多少she ...
- [Beta]第九次 Scrum Meeting
[Beta]第九次 Scrum Meeting 写在前面 会议时间 会议时长 会议地点 2019/5/19 21:20 20min 大运村公寓6F寝室 附Github仓库:WEDO 例会照片 (一人回 ...
- 第10组 Alpha冲刺(4/6)
链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 学习调用中国天气网API,接近实现天气推送功能 对天气推送的形式进行讨论及重确 ...
- TCP的连接如何知道对方已经异常断开
断电的话,对方不会发送任何数据包过来,包括RST.主机无法得知.如果是TCP已经连接,有个定时器,会发送空包,sequence number不变.如果一直收不到ack,会断定对方已经无法通信,而释放系 ...
- SQL优化-如何分析性能瓶颈
MySQL优化一览图 笔者将优化分为了两大类:软优化和硬优化.软优化一般是操作数据库即可:而硬优化则是操作服务器硬件及参数设置. 1.软优化 1)查询语句优化 首先我们可以用EXPLAIN或DESCR ...
- c# 通过json.net中的JsonConverter进行自定义序列化与反序列化
https://www.cnblogs.com/yijiayi/p/10051284.html 相信大家在工作中会经常遇见对json进行序列化与反序列化吧,但通常的序列化与反序列化中的json结构与c ...
- python离线包下载地址
https://pypi.org/project/pdfconv/ https://pypi.org/search/?q=major&o=
- centos7.6下的python3.6.9虚拟环境安装elastalert
centos7.6安装python3.6.9+elastalert .编译安装python3..9环境 # 安装依赖 yum -y install zlib-devel bzip2-devel ope ...