首页
学习
活动
专区
圈层
工具
发布

MySQL用全库备份数据恢复单表数据

备份数据库时,采用了全库备份,但是因为某些原因需要回滚一个表的数据到备份数据库上,如果回滚整个库就比较费时间,因为可能这个表只有几十M,但是其它表可能有十几上百G,这时候就需要将需要恢复的表提取出来了...现在有备份库fdcsqlMySQL-2018_11_30-03_00_01.sql,里面有多张表,现在需要恢复其中fdc_document这张表的数据 提取建表语句 sed -e '/....INTOfdc_document' fdcsqlmysql-2018_11_30-03_00_01.sql > document.sql 执行完后会得到文件document.sql,这就是需要的单独的表文件,就可以正常恢复表数据了...建库建表 先创建数据库,再根据上面的SQL语句创建表fdc_document 导入表数据 MySQL [document]> souce /data/backup/mysql/document.sql

1.4K10

MySQL Slave库恢复实录

状况描述: 今天登录一个MySQL数据库slave节点主机发现/var/lib/mysql下存放大量的mysql-relay-bin文件,最早的文件创建日期甚至是2018年,我记得在slave库同步完master...的日志操作记录后,会删除这些文件(默认设置不会删除,我记错了),于是便查看了slave库的状态,发现如下报错: mysql> show slave status\G; *****************....00007格式的文件,其中包括mysql-bin.000075,因此,slave库找不到该文件,无法同步。...解决办法: 重做slave库。由于数据差异太大,而且我觉得不光一张表出现了数据不一样的问题,所以干净点,把从库重做。 1)比对master、slave节点库配置信息,保证一致。...(这个停了以后,我就没开过,不知道有没有问题,待观察) 4)记录master节点上库的日志记录位置,之后备份数据库: mysql> show master status; +--------------

62210
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    13.6 mysql数据库备份恢复

    mysql数据库备份恢复目录概要 备份库 mysqldump -uroot -p123456 mysql > /tmp/mysql.sql 恢复库 mysql -uroot -p123456 mysql...-d mysql > /tmp/mysql.sql mysql数据库备份恢复 备份库 在执行mysqldump -uroot -p123456 mysql的时候会看到很多信息,屏幕上显示的这些就是备份的数据...[root@hf-01 ~]# 我们可以通过mysqlbak.sql来恢复数据库,还可以恢复到另外一个数据库里面去 创建一个新的库mysql2 [root@hf-01 ~]# mysql -uroot...[root@hf-01 ~]# 恢复库 mysql -uroot -phanfeng mysql mysql.sql [root@hf-01 ~]# mysql -uroot -p'hanfeng...[root@hf-01 ~]# less /tmp/user.sql 查看备份表 恢复表的时候,只需要写库的名字,不需要去写表的名字 恢复表 mysql -uroot -p123456 mysql

    5.9K90

    mysql 数据库备份和恢复

    Mysql本身不提供这种功能,需要地方放工具如Veritas, LVM, or ZFS提供。 全量备份 vs 增量备份 全量备份即备份mysql管理的所有数据。增量备份即备份改变的数据。...全量恢复 vs 增量恢复 全量恢复及恢复备份中所有的数据,是数据库恢复到备份时数据库状态。如果全量恢复的状态不够实时,可以接着使用增量恢复,恢复全量备份到这一刻所有的数据变化,是数据库状态保持最新。...增量恢复即恢复一个时间段内的数据变化。基于二进制日志,作为全量备份的补充。二进制文件中存储数据改变命令操作,通过重新执行相应的操作,使得数据库恢复到特定的状态. 备份规划、压缩和加密 ......这样在恢复时,就可以针对特定的数据库进行恢复,不至于造成所有的恢复都恢复到默认数据库里。如果需要备份文件包含drop数据库语句,则使用 --add-drop-database 选项。...< dump-data.sql 四、二进制文件增量恢复 作为全全量备份的补充,用于将服务器更新到最新状态。

    5.6K20

    MySQL通过 XtraBackup 备份恢复单个库

    1.概述 本文通过 XtraBackup 备份单个数据库,然后恢复到另一个实例,用于快速迁移大数据量,使用的软件版本为: 软件名 版本 MySQL mysql-5.7.39-linux-glibc2.12...--mysql-ignore-errors=all prepare 3.通过 xtrabackup 备份 MySQL-A 的 sysbench 库 shell> innobackupex --defaults-file...4.备份 MySQL-A sysbench 库的表结构 shell> /mysql/svr/mysql/bin/mysqldump -ugreatsql -pgreatsql -h127.0.0.1 -...| 10000 | +----------+ 1 row in set (0.04 sec) 总结 通过上述方法可以快速备份恢复大数据量的库,也可以同时指定多个库,单张表或多张表进行恢复。...---- 关于 GreatSQL GreatSQL是由万里数据库维护的MySQL分支,专注于提升MGR可靠性及性能,支持InnoDB并行查询特性,是适用于金融级应用的MySQL分支版本。

    3.2K61

    MYSQL数据库恢复案例分享

    最后在掉线第三块盘时盘片划伤RAID崩溃),无法通过校验直接获取丢失盘的数据,所以只能使用磁盘同等大小的全0镜像进行重组(此方法只可用于紧急情况,因为依赖空镜像组成的RAID文件系统结构会被严重破坏,相当于每个条带都会缺失两个块的数据...在与客户沟通后得知虚拟机内有MYSQL数据库,因为数据库底层存储的特殊性,可以通过扫描数据页进行数据提取。...4、获取MYSQL数据页并分析 根据MYSQL数据页特征进行数据页扫描并导出(innodb引擎可以使用此方案,myisam因为没有“数据页”概念所以不可用),分析系统表获取各用户表信息,根据各个表的ID...提取记录:分别使用两组不同表结构对数据记录进行提取并导入恢复环境中的MYSQL数据库内,然后剔除各个表中因为表结构变更造成的乱码数据,最后将两组数据分别导出为.sql文件。...6、数据恢复结果 因为两个版本的数据库表结构不同,所以联系了客户方的应用工程师进行调试。调试完成后导入平台,经验证,数据可用本次数据恢复成功。

    4.3K20

    MySQL数据库备份和恢复

    数据库备份 数据库复制不能取代备份的作用 备份分类: 全量备份:整个数据库的完整备份 增量备份:在上一次备份基础上,对更改数据进行备份。...bash: mysql-u-p dbname<backup.sql mysql client: mysql>source/tmp/backup.sql 指定时间点的恢复 先决条件 具有指定时间点前的一个全备...具备自上次全备后到指定时间点的所有“二进制日志”(相当于重复操作从备份时间点的到现在的数据库操作) 步骤: 还原某个时间点的全备 mysql-uroot-p mc_orderdb全备时开始的mysql-bin的log操作的日志点(change master那行) 查看最近的误操作mysql-bin的log的日志点 mysqlbinlog--start-position=84882...--apply-log全备目录 mv/path/to/BACKUP-DIR/home/mysql/data 恢复后的数据直接替换原本的 记得改变属于的用户chmod 制定备份计划 每天凌晨对数据库进行一次全备

    7.9K20

    即使删了全库,保证半小时恢复

    但是,如果人为不小心执行了“删全库”操作,命令会同步给其他从(主)库,导致所有库上的数据全部丢失,这下怎么办呢? 可以问问自己,当这种情况发生的时候: (1)能不能恢复数据?...(应该没有公司不能) (2)多久能够恢复数据? 保证数据的安全性是DBA第一要务。 【全量备份+增量备份】 常见的数据库安全性策略是:全量备份+增量备份。 ?...增量备份:定期(例如每天)将binlog增量备份 如果不小心误删了全库,可以这么恢复: (1)将最近一次全量备份的全库找到,拷贝回来(文件一般比较大),解压,应用 (2)将最近一次全量备份后,每一天的增量...为了保证方案的可靠性,建议定期进行恢复演练。 方案优点:能够找回数据 方案缺点:恢复时间非常长 有没有更优,更快恢复的方案呢? 【1小时延时从】 使用1小时延时从库,可大大加速“删全库”恢复时间。...当“删全库”事故发生时,只需要: (1)应用1小时延时从 (2)将1小时延时从最近一次同步时间到,将执行“删全库”之前的binlog找到,重放 快速恢复完毕。

    1.3K50

    使用mysql自带工具mysqldump进行全库备份以及source命令恢复数据库

    mysql数据库提供了一个很好用的工具mysqldump用以备份数据库,下面将使用mysqldump命令进行备份所有数据库以及指定数据库 一、mysqldump一次性备份所有数据库数据 /usr/local.../mysql/bin/mysqldump -u用户名 -p密码 --all-databases > /保存路径/文件名.sql 注意:以上命令直接在控制台输入即可,无须登录进入数据库操作界面 以上命令执行后...,你就可以在对应路径下,找到你的备份sql文件了 二、mysqldump 一次性备份指定的多个数据库数据 /usr/local/mysql/bin/mysqldump -u用户名 -p密码 --databases...数据库1 数据库2... > 保存路径/文件名.sql 注意:使用以上两种方式备份的数据库,会将数据库的创建语句一起进行了备份。...三、使用source 命令恢复数据库 使用source 命令,需要先登录数据库,在数据库操作界面调用该指令进行还原,语法如下 source 路径/文件名.sql 版权属于:逍遥子大表哥 本文链接:https

    1.7K20

    存储崩溃MySQL数据库恢复案例

    这种情况下通常无法通过校验直接获取丢失盘的数据,所以只能使用磁盘同等大小的全0镜像进行重组。...四、通过分析数据库页提取数据 本次数据恢复的虚拟机内有mysql数据库,可以利用数据库底层存储的特殊性进行数据页扫描,提取数据。...五、获取mysql数据页并分析 根据mysql数据页特征进行数据页扫描并导出(innodb引擎可以使用此方案,myisam因为没有“数据页”概念所以不可用),分析系统表获取各用户表信息,根据各个表的id...分别使用两组不同表结构对数据记录进行提取并导入恢复环境中的mysql数据库内,然后剔除各个表中因为表结构变更造成的乱码数据,最后将两组数据分别导出为.sql文件。...七、数据验证 因为两个版本的数据库表结构不同,所以联系了客户方的应用工程师进行调试。调试完成后导入平台,平台调试成功,本次数据恢复成功。

    6.1K20

    MySQL 数据库基础操作指南:从创建管理到备份恢复全解析

    前言 在日常开发或数据管理中,与 MySQL 数据库打交道时,我们最常遇到的需求往往不是复杂的架构设计,而是 “如何创建一个数据库”“怎么查看字符集是否正确”“备份的数据该怎么恢复” 这类基础操作。...,再到数据库的基本操纵逻辑,最后重点拆解备份与恢复的具体步骤,以及如何查看数据库连接情况排查问题。...> 备份和恢复 备份 # mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径 在系统终端执行正确的 mysqldump 命令 将test2库备份文件...数据库名2 ... > 数据库存放路径 MYSQL客户端执行: 如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原。...我们从数据库的 “查看与创建” 入手,掌握了如何安全删除数据库、如何通过字符集与校验规则规避乱码问题,也了解了数据库的基本操纵逻辑,最后重点学会了备份与恢复的两种常用方式,以及如何通过查看连接情况排查异常

    61110

    删库不必跑路!详解 MySQL 数据恢复

    所以,删库跑路不是上上策。 1、前言 数据恢复的前提的做好备份,且开启 binlog,格式为 row。如果没有备份文件,那么删掉库表后就真的删掉了,lsof 中还有记录的话,有可能恢复一部分文件。...如果 binlog 格式不为 row,那么在误操作数据后就没有办法做闪回操作,只能老老实实地走备份恢复流程。 2、直接恢复 直接恢复是使用备份文件做全量恢复,这是最常见的场景。...2.1 mysqldump 备份全量恢复 使用 mysqldump 文件恢复数据非常简单,直接解压了执行: gzip -d backup.sql.gz | mysql -u -h...: # 全量恢复 [mysql@mysql-test ~]$ mysql -S /tmp/mysql.sock < backup.sql # 应用增量日志 [mysql@mysql-test ~]$...@mysql-test ~]$ mysql -S /tmp/mysql.sock < backup.sql 全量恢复后状态: chgnqm-3306>>show tables; +----------

    1.8K30

    删库不跑路:论MySQL数据恢复

    日常工作中,总会有因手抖、写错条件、写错表名、错连生产库造成的误删库表和数据的事情发生,那么,如果连数据都恢复不了,还要什么 DBA。...2.直接恢复 直接恢复是使用备份文件做全量恢复,这是最常见的场景 2.1.mysqldump备份全量恢复 使用 mysqldump 文件恢复数据非常简单,直接解压了执行 gzip -d backup.sql.gz...| mysql -u -h -P -p 2.2.xtrabackup备份全量恢复 恢复过程 # 步骤一:解压(如果没有压缩可以忽略这一步) innobackupex...# 全量恢复 [mysql@mysql-test ~]$ mysql -S /tmp/mysql.sock < backup.sql # 应用增量日志 [mysql@mysql-test ~]$...@mysql-test ~]$ mysql -S /tmp/mysql.sock < backup.sql 全量恢复后状态 chgnqm-3306>>show tables; +-----------

    2K20

    【MySql】数据库的备份与恢复

    前言 对与数据库的备份与恢复该怎么去做呢?...Linux下对于文件或目录的备份,直接拷贝一份,留着备用,对于备份,比较简单的做法会就是直接打包拷贝一下,但是,如果需要恢复数据时,你可能会发现更多的问题,如受到版本的影响 不同版本的数据库对于命令,...MySql不提供拷贝或直接对文件夹重命名,而且我们也不推荐这么去做;我们比较推荐的是使用mysql的备份工具。...-u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径 如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原...查看连接情况 如果数据库很卡,可以查一下当前有什么人在使用数据库,也就是查看连接情况: show processlist 可以告诉我们当前有哪些用户连接到我们的MySQL,如果查出某个用户不是你正常登陆的

    2.1K30
    领券