利用XtraBackup实现PXC数据库的热备份
PXC 容器中安装XtraBackup
apt-get updata

1.在宿主机创建数据库卷,将数据卷映射到某个数据库的节点上
docker volume create backup
2.暂停node1节点 并删除,重新创建node1 将备份的路径进行映射
1.删除所有mysql 数据节点容器,和数据券
docker rm node1,node2,node3,node4,node5
docker volume rm v2,v2,v3,v4,v5
docker volume create v1
docker volume create backup
2.创建node1,
docker run -d -p 3306:3306 -v v1:/var/lib/mysql -v backup:/data -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 --privileged --name=node1 -e CLUSTER_JOIN=node2 --net=net1 --ip 172.20.0.2 px
// CLUSTER_NAME=PXC 集群名字
// XTRABACKUP_PASSWORD=123456 数据库集群节点之间同步用到的密码
// --privileged 给最高的权限
// node1 为容器的名字,网段为net1 ip为172.18.0.2
// pxc 为镜像的名称
// -e CLUSTER_JOIN=node2 加入node2节点
// -v backup:/data 数据卷映射
3.进入node1容器安装热备份的工具
#进入node1容器
docker exec -it node1 bash
#更新软件包
apt-get update
#安装热备工具
apt-get install percona-xtrabackup-24
#全量热备
innobackupex --user=root --password=abc123456 /data/backup/full
4.查看备份数据卷的位置
docker inspect backup
5.全量恢复步骤:
1.删除所有mysql 数据节点容器,和数据券
docker rm node1,node2,node3,node4,node5
docker volume rm v2,v2,v3,v4,v5
docker volume create v1
docker volume create backup
2.将所有的事务都回滚
innobackupex --user=root --password=abc123456 --apply-back data/backup/full/20210-07-01_05-09-16/
3.执行恢复语句
innobackupex --user=root --password=abc123456 --copy-back /data/backup/full/20210-07-01_05-09-16/
4.重新创建mysql 集群node2,node3,node4,node5
利用XtraBackup实现PXC数据库的热备份的更多相关文章
- 利用xtrabackup备份mysql数据库
利用xtrabackup备份mysql数据库 一.安装1.直接下载二进制文件wget http://www.percona.com/downloads/XtraBackup/XtraBackup-2. ...
- 利用xtraBackup实现不停master服务做主从同步
MySQL主从同步原理: MySQL主从同步是在MySQL主从复制(Master-Slave Replication)基础上实现的,通过设置在Master MySQL上的binlog(使其处于打开状态 ...
- MySQL利用xtrabackup在线修复或新增从库
如果数据库的数据量很大,表大小有几十个G,利用mysqldump导出备份会消耗非常长的时间,会对数据库产生不稳定风险,这时可以利用xtrabackup工具在线复制主库文件,利用复制出来的主库文件可以修 ...
- CentOS 7 搭建PXC 数据库集群
CentOS 7 搭建PXC 数据库集群 PXC( Percona XtraDB Cluster ) 特点如下: 1.同步复制,事务要么在所有节点提交或不提交,保证了数据的强一致性. 2.多主复制,可 ...
- 0209利用innobackupex进行简单数据库的备份
利用innobackupex进行简单数据库的备份yum install perl-DBIyum install perl-DBD-MySQLyum install perl-Time-HiResyum ...
- 利用XtraBackup给MYSQL热备(基于数据文件)
利用XtraBackup给MYSQL热备(基于数据文件) By JRoBot on 2013 年 11 月 26 日 | Leave a response 利用XtraBackup给MYSQL热备(基 ...
- 利用oneproxy部署mysql数据库的读写分离
实验系统:CentOS 6.6_x86_64 实验前提:防火墙和selinux都关闭 实验说明:本实验共有4台主机,IP分配如拓扑 实验软件:mariadb-10.0.20 oneproxy-rhel ...
- SQLServer2005利用维护计划自动备份数据库
经常性忘了给数据库备份,结果当数据库发生问题的时候,才发现备份是1个月以前的,那个后悔与懊恼还加惭愧啊,别提有对难受了.要认为的记住去备份比较难,每天事情又那么多,所以有了这个自动备份就不用愁了.先拷 ...
- MariaDB之基于Percona Xtrabackup备份大数据库[完整备份与增量备份]
MariaDB之基于Percona Xtrabackup备份大数据库[完整备份与增量备份] 1.Xtrabackup的安装 percona-xtrabackup-2.2.3-4982.el6.x86_ ...
- MySQL数据库双机热备份
MySQL数据库双机热备份 1.mysql 数据库没有增量备份的机制 当数据量太大的时候备份是一个很大的问题.还好 mysql 数据库提供了一种主从备份的机制,其实就是把主数据库的所有的数据同时写到备 ...
随机推荐
- mysql 错误解决大法 Specified key was too long; max key length is 767 bytes
高版本mysql向低版本(5.7以下)导入sql时可能会发生此问题 开启索引最大长度 SET GLOBAL INNODB_LARGE_PREFIX = ON; 将表改为动态表SET GLOBAL in ...
- 郁金香 对MFC 编辑框的查看 与更改
非常简单,本来想写一个带窗口的DLL注入工具 但是进程句柄可以拿到,但是好像开辟不了空间 注入DLL进不去 不知道怎么回事 这个问题,日后解决
- 物语(monogatari)
\(Description\) 某一天,少年邂逅了同病相连的IA.见面后,IA一把牵起少年的手,决定和他一起逃离部落,离开这个无法容身的是非之地. 要逃离部落,少年和IA就需要先选择一条耗时最少的路线 ...
- Ansible-playbook 快速入门到放弃
Ansible-playbook 快速入门到放弃 隔岸红尘忙似火,当轩青嶂冷如冰. 1-简介 playbook 相当于可以把模块命令都写入到配置文件里面,这样就可以直接执行配置文件了,类似脚本. 2- ...
- .net 中的几种事务
在一个MIS系统中,没有用事务那就绝对是有问题的,要么就只有一种情况:你的系统实在是太小了,业务业务逻辑有只要一步执行就可以完成了.因此掌握事务处理的方法是很重要,进我的归类在.net中大致有以下4种 ...
- js根据某个字段进行分组
分组前数据: [ {"f1":"q","f2":"w","f3":"e",&qu ...
- 置顶TOP
HTML <a href="javascript:void(0)" class="go-top" @click="goTop"> ...
- JS常用默认行为
form下表示: var forms =document.forms[0]; var forms =document.myform; 找input:var txtName = form.element ...
- pat乙级 1021个位数统计
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> ...
- Vue-cli创建的项目结构分析,各初始化文件解释说明
结构图: 一.项目结构说明 1..gitignore :git的忽略文件(哪些文件或文件夹不想接受git管理的,可在此文件配置) 2.babel.config.js:babel控制文件,ES6=&g ...