xtrabackup-docker实战

xtrabackup

引言

案例代码可以从https://github.com/WeiXiao-Hyy/k8s_example获取,欢迎Star!

环境准备

创建数据文件夹和备份文件夹

mkdir -p ~/GitCode/xtrabackup/mysql/data
mkdir -p ~/GitCode/xtrabackup/mysql/backup

制作MySQL:5.7运行环境

cd mysql-5.7docker build -t mysqld-prod:5.7 .

制作xtrabackup-2.4.20运行环境

cd xtrabackup-2.4.20docker build -t centos7.8_xtrabackup:v1 .

运行MySQL

docker run -d \
--name mysqld-prod \
--restart=always \
-e MYSQL_ROOT_PASSWORD=123456 \
-p 3307:3306 \
-v ~/GitCode/xtrabackup/mysql/data:/var/lib/mysql \
mysqld-prod:5.7 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci

运行xtrabackup

docker run -it -d \
--name centos7.8_xtrabackup \
--restart=always \
-e TZ=Asia/Shanghai \
-v ~/GitCode/xtrabackup/mysql/data:/data \
-v ~/GitCode/xtrabackup/mysql/backup:/backup \
centos7.8_xtrabackup:v1

查看MySQL容器的IpAddress以及执行创建数据库插入/删除操作

执行插入或删除操作才能让MySQL生成bin-log文件

docker inspect mysqld-prod # 查看IPAddress

全量备份

启动xtrabackup备份

# 172.17.0.2 为上一步查看的MySQL容器IPAddressinnobackupex \
--user=root \
--password=123456 \
--port=3306 \
--host=172.17.0.2 \
--socket=/data/mysql.sock \
--datadir=/data /backup

执行prepare操作

xtrabackup --prepare --target-dir=/backup/2024-03-07_21-32-37

用于恢复MySQL

rsync -avrP /backup/2024-03-07_21-32-37 /var/lib/mysql/

修改MySQL文件夹的权限

chown -R mysql:mysql /var/lib/mysql

参考资料

  • https://blog.csdn.net/wfs1994/article/details/80396604#t3
  • https://www.cnblogs.com/xiao987334176/p/13953912.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/728088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring事务注解@Transactional的流程和源码分析

Spring事务简介 Spring事务有两种方式: 编程式事务:编程式事务通常使用编程式事务管理API实现,比如Spring提供的PlatformTransactionManager接口,使用它操控事务。声明式事务:注解式事务使用AOP(面向切面…

字符串匹配问题(strs)

作者 刘昆 单位 中国矿业大学徐海学院 字符串中只含有括号 (),[],<>,{},判断输入的字符串中括号是否匹配。如果括号有互相包含的形式&#xff0c;从内到外必须是<>,(),[],{}&#xff0c;例如。输入: [()] 输出 YES&#xff0c;而输入([])&#xff0c;([)]都应该输…

通过Dockerfile创建镜像

通过Dockerfile创建镜像 Docker 提供了一种更便捷的方式&#xff0c;叫作 Dockerfile docker build命令用于根据给定的Dockerfile构建Docker镜像。 docker build语法&#xff1a; # docker build [OPTIONS] <PATH | URL | -> 1. 常用选项说明--build-arg&#xff0c;设置…

Java学习笔记------内部类

类的五大成员 属性、方法、构造方法、代码块、内部类 内部类 格式&#xff1a; public class Outer{//外部类 public class Inner{//内部类 } } public class Test{//外部其他类 public static void main(String[] args) } inner类表示的事物是Outer类的一部分&#xf…

Python时间模块

Python语言的time模块&#xff1a;提供获取操作系统时间的相关命令 时间的表示方法 时间戳 从1970.1.1 0.0.0到当前时间点经历的秒数UTC &#xff08;世界协调时间&#xff09; 以英国格林威治这个城市所在的经度点为0时时区&#xff0c;向东或者向西每15度为1个时区&#xf…

数据库设计的三大范式理解与应用

数据库设计的三大范式是关系型数据库设计的基本原则&#xff0c;它们分别是&#xff1a;第一范式&#xff08;1NF&#xff09;&#xff1a;确保数据库表的每一列都是不可分割的基本数据项&#xff0c;即表中的所有字段值都是不可再分的原子值。这个范式的主要目的是确保每一个字…

【计算机考研】考408,还是不考408性价比高?

首先综合考虑&#xff0c;如果其他科目并不是很优秀&#xff0c;需要我们花一定的时间去复习&#xff0c;408的性价比就不高&#xff0c;各个科目的时间互相挤压&#xff0c;如果备考时间不充裕&#xff0c;考虑其他专业课也未尝不可。 复习408本来就是费力不讨好的事情 不同…

公司项目总结合分享经验

珠海督办 1.批量导入 导入excel表单给接口&#xff0c;接口返回前端想要的数据 list是代表数据的数量&#xff0c;titleMap是代表数据中会有那些字段 listl里面的字段&#xff1a; value是代表要显示的值&#xff0c;success为true代表excel表格的内容填写是正确的&#…

前端布局方式及其优缺点

前端布局方式多种多样&#xff0c;每种布局方式都有其特定的应用场景、特性和优缺点。以下是一些常见的前端布局方式及其特点和优缺点&#xff1a; 静态布局&#xff1a; 特性&#xff1a;元素的尺寸使用绝对单位&#xff08;如px&#xff09;进行定义&#xff0c;不会随浏览器…

代码随想录训练营第三十期|第五十三天|动态规划part14|● 1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划

1143. 最长公共子序列 - 力扣&#xff08;LeetCode&#xff09; class Solution {public int longestCommonSubsequence(String text1, String text2) {int[][] dp new int[text1.length() 1][text2.length() 1];dp[0][0] 0;for (int i 1; i < text1.length(); i) {ch…

1.5 简述转置卷积的主要思想以及应用场景

1.5 简述转置卷积的主要思想以及应用场景 普通的卷积主要思想&#xff1a; 普通的卷积操作可以形式化为一个矩阵乘法运算&#xff0c;即yAx&#xff08;1-12&#xff09; 其中&#xff0c;x和y分别是卷积的输入和输出(展平成一维向量形式)&#xff0c;维度分别为d⁽i⁾和d⁽…

Linux:kubernetes(k8s)探针ReadinessProbe的使用(9)

本章yaml文件是根据之前文章迭代修改过来的 先将之前的pod删除&#xff0c;然后使用下面这个yaml进行生成pod apiVersion: v1 # api文档版本 kind: Pod # 资源对象类型 metadata: # pod相关的元数据&#xff0c;用于描述pod的数据name: nginx-po # pod名称labels: # pod的标…

第三百八十八回

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了DateRangePickerDialog Widget相关的内容,本章回中将介绍Radio Widget.闲话休提&#xff0c;让我们一起Talk Flutter吧。 概念介绍 我们在这里说的Radio Widget是指单选按钮&#xff0c;没有选中时是圆形边框&#x…

Vue+SpringBoot打造超市账单管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统设计3.1 总体设计3.2 前端设计3.3 后端设计在这里插入图片描述 四、系统展示五、核心代码5.1 查询供应商5.2 查询商品5.3 新增超市账单5.4 编辑超市账单5.5 查询超市账单 六、免责说明 一、摘要 1.1 项目介绍 基于…

王道机试C++第 3 章 排序与查找:排序问题 Day28(含二分查找)

查找 查找是另一类必须掌握的基础算法&#xff0c;它不仅会在机试中直接考查&#xff0c;而且是其他某些算法的基础。之所以将查找和排序放在一起讲&#xff0c;是因为二者有较强的联系。排序的重要意义之一便是帮助人们更加方便地进行查找。如果不对数据进行排序&#xff0c;…

区块链基础知识01

区块链&#xff1a;区块链技术是一种高级数据库机制&#xff0c;允许在企业网络中透明地共享信息。区块链数据库将数据存储在区块中&#xff0c;而数据库则一起链接到一个链条中。数据在时间上是一致的&#xff0c;在没有网络共识的情况下&#xff0c;不能删除或修改链条。 即&…

mysql表数据更新

文章目录 插入数据插入单条数据插入多条数据复制表插入数据 更新数据删除数据截断表 数据库和表创建完成后&#xff0c;应该如何使用呢&#xff1f; 插入数据 插入单条数据 INSERT INTO table_name (column_name1, column_name2, ...) VALUE (value1, value2, ...);插入多条数…

2、函数、对象、对象方法函数的使用、扩展运算符、箭头函数

一、函数 1、数字类型的用法 带Number的先判断是不是数字类型 Number.isNaN() 判断是否 是非数值 非数值返回 true数值类型返回 false console.log(Number.isNaN(NaN)); // true console.log(Number.isNaN(false)); // false console.log(Number.isNaN(null)); // false c…

【uni-app小程序开发】实现一个背景色渐变的滑动条slider

最近做的一个用uni-app+vue2开发的微信小程序项目中要实现一个滑动进度控制条,如下图所示: 1. 滑动条需要渐变背景色 2. 滑块的背景色需要与当前位置滑动条的背景色一致(动态改变) 碰到这样的需求,我当然先是看看官方提供的slider组件和uView里的u-slider组件能不能满足…

Javaweb之Web后端开发总结的详细解析

4. Web后端开发总结 到此基于SpringBoot进行web后端开发的相关知识我们已经学习完毕了。下面我们一起针对这段web课程做一个总结。 我们来回顾一下关于web后端开发&#xff0c;我们都学习了哪些内容&#xff0c;以及每一块知识&#xff0c;具体是属于哪个框架的。 web后端开…