Mysql利用备份数据恢复单表

news2024/9/20 10:34:45

1、说明

之前的备份是使用Xtrabackup8做的备份
使用了独立表空间(innodb_file_per_table=1),就可以单独恢复这个表。
在这里插入图片描述

2、在备份的目录下执行Prepare

根据自己之前备份的目录,选择执行路径
我之前的备份目录是 /tmp/backup/2023-12-16/full

cd  /tmp/backup/2023-12-16/full
xtrabackup --prepare --export --target-dir=. > export.log 2>&1

prepare时带上参数–export,xtrabackup会生成import tablespace需要的文件。
在这里插入图片描述

3、查看日志,确认prepare成功。

cat export.log | tail -n 10

显示[Xtrabackup] completed OK!
在这里插入图片描述

4、查看表结构

use  school;
show create table student\G;
*************************** 1. row ***************************
       Table: student
Create Table: CREATE TABLE `student` (
  `学号` char(20) DEFAULT NULL,
  `姓名` char(20) DEFAULT NULL,
  `性别` char(5) DEFAULT NULL,
  `手机号` bigint DEFAULT NULL,
  `通信地址` char(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

ERROR: 
No query specified

在这里插入图片描述

5、将表drop掉,模拟数据丢失的场景。

drop  table  school.student;

在这里插入图片描述

6、创建表结构,并执行discard tablespace命令。

进入库 school

use  school;
CREATE TABLE `student` (
  `学号` char(20) DEFAULT NULL,
  `姓名` char(20) DEFAULT NULL,
  `性别` char(5) DEFAULT NULL,
  `手机号` bigint DEFAULT NULL,
  `通信地址` char(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

在这里插入图片描述
执行discard tablespace命令

alter table student discard tablespace;

在这里插入图片描述

7、将备份文件copy到实例数据库目录下

将表对应的文件copy到目标实例数据库对应目录下,并修改文件属主权限。如果文件属主权限没有正确设置,下一步import表空间时可能会出错。

进入到之前的备份文件目录

cd /tmp/backup/2023-12-16/full/school
cp  ./student.*   /opt/lucky/data/data_16303/school

在这里插入图片描述
/opt/lucky/data/data_16303/school 这个目录是我当前实例的路径,具体的根据你的实例修改。

修改一下权限

chown -R swadmin:swadmin /opt/lucky/data/data_16303/school 

在这里插入图片描述

8、import表空间

执行import tablespace命令,确认数据恢复。

alter table school.student import tablespace;

在这里插入图片描述
验证数据

select count(*) from school.student;

在这里插入图片描述

9、获取表结构语句

以上的操作是根据知道表结构的情况下做的。如果在生产中误删表的,就要使用
使用三方工具在备份文件中再从ibd文件中提取表结构信息之后,转换成建表语句,再按步骤进行恢复。

待更新…















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

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

相关文章

虾皮 选品:如何在虾皮平台上进行有效的选品?

在虾皮(Shopee)这个跨境电商平台上,选品对于卖家来说至关重要。选品决定了店铺的销售额和竞争力。为了帮助卖家进行选品,虾皮平台提供了一些免费的选品工具,如知虾。同时,还有一些第三方选品工具&#xff0…

全国县级行政区点位数据,Shp+excel格式

基本信息. 数据名称: 县级行政区点位 数据格式: Shpexcel 数据时间: 2021年 数据几何类型: 点 数据坐标系: WGS84坐标系 数据来源:网络公开数据 数据字段: 序号字段名称字段说明1xzqhdm_1省代码2xzqhmc_1省名称3xzqhdm_2市代码4xzqhmc_2市代…

pycharm设置自定义的代码颜色

1.最快的方法,选一个自己喜欢的主题,再对细节进行修改,操作如下,file->setting->Editor->ColorScheme->Language Defaults->Scheme。 在选好的主题上自定义自己喜欢的代码颜色,这里本人将自己自定义的函…

文献速递:生成对抗网络医学影像中的应用——基于生成对抗网络的医学图像处理:系统综述

本周给大家分享文献的主题是生成对抗网络(Generative adversarial networks, GANs)在医学影像中的应用。文献的研究内容包括同模态影像生成、跨模态影像生成、GAN在分类和分割方面的应用等。生成对抗网络与其他方法相比展示出了优越的数据生成能力&#…

你是无醇葡萄酒的爱好者吗?

不含酒精的蒸馏酒和起泡酒正在流行,尽管它们是葡萄酒市场中最小的细分市场之一,但需求和供应都在稳步增长。这是因为,和啤酒一样,消费者越来越多地询问无醇葡萄酒。 来自云仓酒庄品牌雷盛红酒分享不含酒精的酒好喝吗?尼…

Flink实时电商数仓(二)

GitLab的用户创建和推送 在root用户-密码界面重新设置密码添加Leader用户和自己使用的用户使用root用户创建相应的群组使用Leader用户创建对应的项目设置分支配置为“初始推送后完全保护”设置.gitignore文件,项目配置文件等其他非通用代码无需提交安装gitlab proj…

【python VS vba】(9) 在python使用matplotlib库来画多个图形,子图,以及图中图

2 用matplotlib 画多个函数图形 2.1 在一个画布里画多个图形 (1张画布,1个坐标轴系,多个图形叠在一起) import numpy as np import matplotlib.pyplot as pltfig1plt.figure(num1)xnp.linspace(-5,5, 10) yx*21 y2x**2# 绘图 p…

人工智能在约会APP开发中的作用

约会APP已成为当今技术世界中结识人们的流行方式。这意味着您不必要求您的朋友去见某人约会。简而言之,技术改善了约会过程,而人工智能在约会APP开发中的兴起极大地影响了人们今天的约会方式。 在约会APP中使用人工智能技术可以改善个人寻找完美匹配对象…

基于hfl/rbt3模型的情感分析学习研究——文本挖掘

参考书籍《HuggingFace自然语言处理详解 》 什么是文本挖掘 文本挖掘(Text mining)有时也被称为文字探勘、文本数据挖掘等,大致相当于文字分析,一般指文本处理过程中产生高质量的信息。高质量的信息通常通过分类和预测来产生&…

基于Java SSM框架实现宠物医院信息管理系统项目【项目源码】

基于java的SSM框架实现宠物医院信息管理系统演示 java简介 Java语言是在二十世纪末由Sun公司发布的,而且公开源代码,这一优点吸引了许多世界各地优秀的编程爱好者,也使得他们开发出当时一款又一款经典好玩的小游戏。Java语言是纯面向对象语言…

一键修复找不到msvcp140.dll无法继续执行代码的办法,有效修复

电脑出现“找不到msvcp140.dll无法继续执行代码”是什么情况?如果系统中没有这个文件或文件发生损坏,那么在启动某些应用程序或游戏时,可能会遇到错误消息,如“程序无法启动因为msvcp140.dll丢失在您的计算机上”或“找不到msvcp1…

CPU缓存一致性问题

什么是可见性问题? Further Reading :什么是可见性问题? 缓存一致性 内存一致性 内存可见性 顺序一致性区别 CPU缓存一致性问题 由于CPU缓存的出现,很好地解决了处理器与内存速度之间的矛盾,极大地提高了CPU的吞吐能…

luttuce(RedisTempate)实现hash(动态数据) expire lua脚本

话不多说先放脚本: local argv ARGV local length #argv if length > 0 then local unpackArgs {} for i 1, length - 1 dotable.insert(unpackArgs, argv[i]) end if redis.call(exists, KEYS[1]) 1 thenredis.call(del, KEYS[1])redis.call(hset, KEYS[…

【ONE·English || 翻译作业 Development: Mendel‘s Legacy to Genetics】

总言 作业:没有严格按照语句结构进行翻译,有不规范之处。下述目录中每一小节是按照原文段落划分。   相关链接:pubmed中查阅的链接,提供了两处文章平台。 文章目录 总言part11.11.21.3 part2:Entwicklung and develo…

Linear Regression多重共线性

目录 介绍: 一、 corr ​二、pairplot 三、VIF 3.1自带vif 3.2自定义函数vif 四、heatmp(直观感受) 介绍: 多重共线性是指在线性回归模型中,自变量之间存在强相关性或线性关系,从而导致模型的稳定性…

使用相关序列方法做相位校准(附仿真代码)

TI对天线幅相校准提出了标准的方法和流程,可参考这篇文档使用级联毫米波传感器的成像雷达参考设计1(TI文档)-CSDN博客的3.3节。这里使用自相关序列的方法来对相位做校准。 自相关(Autocorrelation),也叫序列…

Hypervisor Display架构

Hypervisor Display架构部分 1,所有LA侧的APP与显示相关的调用最终都会交由SurfaceFlinger处理 2,SurfaceFlinger会最终调用android.hardware.graphics.composer2.4-service服务 3,android.hardware.graphics.composer2.4-service服务会调用G…

http代理的静态ip如何实现YouTube运营?有何优势?

一、静态ip是什么?静态住宅ip有什么优势? 静态ip是指网络中某个设备(如计算机、路由器)拥有的永久不变的ip地址,它的ip地址在设备与网络连接后,由网络管理员手动配置或预留,并且不会轻易更改。…

紫光FPGA学习之常见报错

紫光pango design suite报错: 一、4005: [D:/**/rtl/burstORsingle.v(line number: 47)] Logic for ddr_head_addr_rr does not match a standard flip-flop. 看来看去都没有发现这个定义没有问题呀,检查发现: 原来代码: always…