首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏烟草的香味

    MySQL 数据恢复

    MySQL 数据恢复 前言 前两天因为没注意的误操作, 直接把某个数据表清掉了, 心慌慌. 怪自己学艺不精, 当时整了一下午也没把数据找回来. 对于 MySQL 数据的备份, 主要有两种: 全量备份和增量备份. 全量备份: 将数据库中的所有数据全部进行备份. 相当于复制粘贴的步骤. , 找到当天的全量备份数据恢复, 然后在这基础上进行增量恢复即可恢复到某个特定的时间点. 数据恢复 当需要恢复数据时, 如何根据这两个备份文件进行恢复呢? 打个比方, 当前时间是: 2020-9-4 23:00:00. 此时, 我做了清表的疯狂操作. 如何恢复数据? 1. 通过全量备份, 将数据恢复到今天凌晨的时刻 进入 MySQL命令行, 执行数据恢复文件: source /Users/hujing/dir/tmp/mysqldump_log/2020-09-04.sql

    5.6K50发布于 2020-09-11
  • 来自专栏数据库干货铺

    MySQL数据恢复

    今天分享一下binlog2sql,它是一款比较常用的数据恢复工具,可以通过它从MySQL binlog解析出你要的SQL,并根据不同选项,可以得到原始SQL、回滚SQL、去除主键的INSERT SQL等 --------------+ | 2020-09-18 16:29:26 | +---------------------+ 1 row in set (0.00 sec) 3 binlog2sql恢复数据 3.1 生成恢复SQL 因知道大概误删除的时间,因此通过解析对应时间的binlog恢复出指定库表的数据,生成的结果是用于恢复的sql python binlog2sql.py --flashback start-datetime='2020-09-18 16:29:08' --stop-datetime='2020-09-18 16:30:00' >/tmp/rec.sql 结果内容如下 3.2 恢复数据 | | 7 | vgcess | 29 | | 8 | hdgd | 0 | +----+--------+-------+ 8 rows in set (0.00 sec) 数据恢复

    96910编辑于 2024-02-22
  • 来自专栏吴伟祥

    mysql数据恢复

    其二:自然就是数据恢复了,通过使用mysqlbinlog工具来使恢复数据。     5.现在把凌晨备份的数据恢复:       # /usr/local/mysql/bin/mysql -uroot -p123456 -v < /root/BAK.zyyshop.sql;       注: 至此截至当日凌晨(4:00)前的备份数据恢复了。           就得从前文提到的 mysql-bin.000023 新日志做文章了......     6.从binlog日志恢复数据       恢复语法格式:       # mysqlbinlog mysql-bin 注:此pos结束点介于“导入实验数据”与更新“name='李四'”之间,这样可以恢复到更改“name='李四'”之前的“导入测试数据”         # /usr/local/mysql/bin/mysqlbinlog

    3.5K30发布于 2018-12-24
  • 来自专栏运维前线

    mysql 恢复单表数据

    https://blog.csdn.net/wh211212/article/details/80998349 mysql 恢复数据 table A 从全库备份中抽取出t表的表结构 sed d;q' DB.sql > A.sql (表结构) 从全库备份中抽取出t表的内容 grep 'INSERT INTO `A`' DB.sql > A.sql 到测试库上恢复 # 创建数据库 create database DB; source /tmp/A.sql; 恢复表结构 source /tmp/A.sql; 恢复数据 参考:https://www.jb51.net/article/98090

    3.3K20发布于 2019-05-26
  • 来自专栏Python

    mysql数据备份与恢复

    MySQL数据备份与恢复 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境。但不能恢复到异构系统中如Windows。 #2. >D:\\all.sql #将root用户的所有数据库全部备份到D盘中,文件名为all.sql 二、恢复逻辑备份 #恢复多个库:(直接指定用户,不需要指定数据库名) # mysql -uroot - p123 < D:\\all.sql 将备份至D盘中的所有数据库,恢复至root用户下 #恢复单个库: #方法一:不需要进入mysql程序,直接在终端输入 mysql -uroot -p123 插入数据 //模拟服务器正常运行 4. mysql> set sql_log_bin=0; //模拟服务器损坏 mysql> drop database db; 恢复: 1. # mysqlbinlog //恢复最近一次完全备份 mysql> source /backup/last_bin.log //恢复最后个binlog文件 #数据库备份/恢复实验二:如果有误删除 备份: 1. mysqldump

    3.7K62发布于 2018-01-24
  • 来自专栏Linux 成长之路

    MySQL数据备份与恢复

    1、查看帮助及初始化: C:\Users\zhang>mysqldump --help root@ubuntu:~#mysql_secure_installation 2、单个数据库 [表] 备份: mysqldump >D:\mysql.sql 3、多个数据库备份: mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...] mysqldump -u用户名 >文件名.sql C:\Users\zhang>mysqldump -uroot -p --databases mysql sys >D:\my.sql 4、备份所有数据库: mysqldump [OPTIONS  -ppassword databasename < backupfile.sql C:\Users\zhang>mysql -uroot -p sys <D:\sys.sql 6、导入数据库 常用source 命令,用use进入到某个数据库,mysql>source D:\sys.sql,后面的参数为脚本文件 7、数据库常用命令 查看表结构:desc 表名; 显示当前用户:select user(); 显示当前时间

    2.3K10发布于 2019-07-26
  • 来自专栏Linux云运维

    MySQL数据备份与恢复

    MySQL数据备份与恢复 1、数据备份概述 备份是数据安全的最后一道防线,对于任何数据丢失的场景,备份虽然不一定能恢复百分之百的数据(取决于备份周期),但至少能将损失降到最低。 数据丢失的场景举例: 人为操作失误造成某些数据被误操作 软件 BUG 造成部分数据或全部数据丢失 硬件故障造成数据库部分数据或全部数据丢失 安全漏洞被入侵数据恶意破坏 1.1 衡量备份恢复重要指标 衡量备份恢复有两个重要的指标 : 恢复点目标(RPO) 恢复点目标是指数据恢复到什么程度 恢复时间目标(RTO) 恢复时间目标是指数据恢复需要多长时间 1.2 数据库备份分类 数据库备份方式分很多种,从物理与逻辑的角度来看 数据恢复 系统行命令 mysql [选项] 数据库名 [表名] > 备份文件名 source 方法 source 备份文件名 3、mysql全量备份与恢复实例演示 3.1 mysql全量备份 #备份整个数据库 差异备份数据恢复 #模拟误删数据 [root@localhost ~]# mysql -uroot -pPasswd123!

    3.9K31编辑于 2023-03-17
  • 来自专栏Angular&服务

    恢复mysql数据

    1.启动mysqlmysql/etc/my.cnf里面配置日志信息 log_bin=mysql-bin server-id=123454333 然后重新启动mysql 2.查看是否日志列表 show 查看日志列表 show binlog events in 'mysql-bin.000002' 查看指定文件 ? 查看指定文件 mysqlbinlog mysql-bin.0000xx | mysql -u用户名 -p密码 数据库名 3.恢复数据 mysqlbinlog "D:\programs\mysql5.7.64 \data\mysql-bin.000339" | mysql -uroot -p store mysqlbinlog mysql-bin.0000xx | mysql -u用户名 -p密码 数据库名 恢复数据报错 ---- 未完待续。。。。。

    7.9K30发布于 2018-08-20
  • 来自专栏小手冰凉

    MySQL数据备份及恢复

    一、binlog日志恢复 MySQL的二进制日志记录着该数据库所有增删改的操作日志(前提是需要自己开启binlog),还包括了这些操作的执行时间,binlog的使用场景无外乎就是主从同步以及恢复数据库。 7、通过二进制日志恢复数据 假设在开始删除lisi记录的那条sql语句是误操作,现在要通过二进制日志来恢复数据。 3)删除数据mysql> drop database test1; 4)利用binlog恢复数据 [root@mysql data]# mysql -uroot -p123 < /tmp/01.sql 650.sql 5)确定数据恢复 mysql> select schema(); mysql> select * from tb1; ? 可以用来实现轻量级的快速迁移或恢复数据库。 mysqldump 是将数据表导成 SQL 脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备份方法。

    1.2K40发布于 2020-06-10
  • 来自专栏MySQL 笔记

    MySQL 数据备份&恢复(mysqldump 工具)

    MySQL中所有数据库 -B --databases导出一个或多个数据库 -d 只导出表结构 -t 只导出表内容 --tables 指定需要导出的表名 --single-transaction innodb mysqldump 工具导出的数据文件其实是一种SQL脚本,导出后可以方便快速地恢复数据库中 3.导出数据内容到Excel文件 # -e 参数,执行SQL语句,返回结果重定向到Excel文件中 mysql -uroot -p123456 -e "select * from mysql.user" > E:\user.xlsx ---- 二、数据恢复 方法1. cmd命令 #导入单个库或数据表,前提是库已存在 mysql -uroot -p123456 db_name < table_name.sql #导入整个数据mysql -uroot -p123456 < db_name.sql 方法2. SQL命令 #选择数据mysql>use test; #导入所有数据 mysql>source E:/dbname.sql;

    3.3K20发布于 2020-04-15
  • 来自专栏Howl同学的学习笔记

    MySQL数据备份与恢复

    (即 SQL 语句),然后交给 mysql 执行可恢复数据 $mysqlbinlog [option] log_file --start-position:指定某个偏移量来恢复 --stop-positon 冷备 Innodb 冷备是最简单的,通常只需写个脚本来复制 MySQL 的文件,然后将这些文件放到对应数据库的目录下即可实现数据恢复: .frm结构文件 .idb独立表空间文件 redo重做日志文件 共享表空间文件 查看mysql数据存放的目录 # /var/lib/mysql/data $show variables like "%datadir%" # 2. 备份物理文件 $cd /var/lib/mysql/ $tar -zcvf mysqlDataBacku.tar.gz data/ 4.2 恢复 # 1. 恢复只需将上面的包解压到对应数据库的数据存放目录下 # 2. 恢复前将原数据备份一下 # 3.

    10.4K30发布于 2021-10-29
  • 来自专栏院长运维开发

    MySQL和Mariadb数据备份恢复

    Enter password: 备份单个库: 库名 备份单个库 备份多个库: -B 库1 库2 库3 备份多个库 备份单个表: 表名 备份单个库 备份多个表: 表名 表1 表2 表3 备份指定库的多张表 恢复命令格式 mysql -uroot -p 目标库名 < stu.sql 从所有库备份中恢复某一个库(--one-database) mysql -uroot -p --one-database 目标库名 < all.sql

    3.4K10发布于 2020-11-04
  • 来自专栏入门小站

    Mysql通过binlog恢复数据

    -bin.000008 刷新binlog日志,保存前面完整的操作 > flush logs; 查看binlog日志,找到需要恢复到的位置 > show binlog events in 'mysql3306 -bin.000008'; image-20210615225134682 在3927位置,rumenz表被删除,所以我们找到了恢复数据的结束点 恢复数据 查看前面用到的所有日志文件 > shwo ---+-----------+ 8 rows in set (0.00 sec) 恢复数据 常用选项: --start-position=953 起始pos点 - demo数据库(一台主机上往往有多个数据库,只限本地log日志) > mysqlbinlog --stop-position=3927 mysql3306-bin.000001 mysql3306 -bin.000007 mysql3306-bin.000007 | mysql -uroot -p123456 如果有多个binlog日志文件,需要全部指定上去 如果只恢复指定数据库,如demo数据

    1K10编辑于 2022-06-02
  • 来自专栏开源部署

    MySQL 启动失败数据恢复案例

    Forcing InnoDB Recovery提供了6个等级的修复模式,需要注意的是值大于3的时候,会对数据文件造成永久的破坏,不可恢复。 ,所以首先要想办法启动mysql,然后dump数据。 ibdata1.bak 启动mysql,然后从备份文件恢复数据 sudo service mysql start mysql -u root -p < all-databases.sql 因为在修复模式下 所以就关闭掉了修复模式 [mysqld] innodb_force_recovery = 0 restart mysql后,再次恢复数据 sudo service mysql restart mysql -u root -p < all-databases.sql 再次重启下mysql,现在mysql可以正常启动了,并且数据恢复成功。

    2.9K10编辑于 2022-08-16
  • 来自专栏互联网-小阿宇

    MySQL dump恢复数据加快

    平常需要恢复数据的时候会发现大点儿的文件都要几个小时 实在是太慢了 我们可以通过修改MySQL的参数来提高数据恢复速度 查看现在参数情况 #先查看现在参数情况 mysql> show variables -------------+-------+ | sync_binlog | 0 | +---------------+-------+ 1 row in set (0.00 sec) mysql (0.00 sec) 修改参数 #临时修改 set global sync_binlog = 2000; set global innodb_flush_log_at_trx_commit = 2; MySQL dump恢复数据 方法一: 在linux命令行使用MySQL dump命令进行恢复 mysqldump -uroot -pxxxxx database < database.sql 方法二: 在MySQL命令行进行恢复 mysql> source /root/databse.sql; 恢复数据 数据导入完毕,你会发现导入的速度大大提高 进行恢复参数设置 set global sync_binlog

    1.4K20编辑于 2022-11-21
  • 来自专栏python全栈教程专栏

    mysql数据库(11):恢复数据

    (1)先登录 mysql -h localhost -u root -p  (2)查看数据库有哪些 show databases;  (3)新建一个空表text create database text 不在了 show databases;  退出mysql后再执行以下命令恢复数据库中的表: mysql -h localhost -u root -p mysql  使用如下命令能够查看到表已经备份进去了 show tables;  如何恢复数据库呢? 以下将chuan.sql备份到text空数据库中 mysql -h localhost -u root -p text  再次登录查看,是成功将chuan这个数据库备份到了text数据库了。 mysql -h localhost -u root -p  ##登录## use text show tables;

    3.7K10发布于 2021-10-18
  • 来自专栏后端码事

    mysql 数据库备份和恢复

    物理备份工具包括mysql的 mysqlbackup及文件系统级别的命令,如, scp, tar, rsync等 恢复MySQL Enterprise Backup 可以恢复它所备份的备份。 增量备份则需要通过启用服务器二进制日志(记录数据变化)来使用。 全量恢复 vs 增量恢复 全量恢复恢复备份中所有的数据,是数据恢复到备份时数据库状态。 如果全量恢复的状态不够实时,可以接着使用增量恢复恢复全量备份到这一刻所有的数据变化,是数据库状态保持最新。 增量恢复恢复一个时间段内的数据变化。基于二进制日志,作为全量备份的补充。 这样在恢复时,就可以针对特定的数据库进行恢复,不至于造成所有的恢复恢复到默认数据库里。如果需要备份文件包含drop数据库语句,则使用 --add-drop-database 选项。 : shell> mysql < dump.sql sql命令行,使用source: mysql> source dump.sql 备份不包含数据库创建语句,确保指定恢复数据库存在: shell> mysqladmin

    4.8K20发布于 2020-09-11
  • 来自专栏乐沙弥的世界

    myloader恢复mysql数据库示例

        mydumper是针对mysql数据库备份的一个轻量级第三方的开源工具,备份方式为逻辑备份。它支持多线程,备份速度远高于原生态的mysqldump以及众多优异特性。 有关mydumper的相关参考 mydumper备份mysql数据库示例 mydumper安装及安装故障汇总 1、单库的备份与恢复 [root@app ~]# mydumper -u leshami #创建测试表 >      insert into sakila.tb select * from sakila.actor" ###将备份库恢复到一个新数据库,如restoredb [root@app [root@app ~]# myloader  -u leshami -p xxx   -o -B sakila -d /tmp/bak 2、单表恢复 [root@app ~]# mysql -urobin (mysql|test))' -o /tmp/bak ###尝试删除部分数据库 [root@app ~]# mysql -urobin -pxxx   \ >  -e "drop database tempdb

    5.5K20发布于 2018-08-13
  • 来自专栏全栈程序员必看

    mysql 误清空表 恢复数据

    把今天一不小心把订单表清空,怎么恢复数据的记录下来 首先mysql需要开启bin-log,我的是宝塔面板,默认开启 接下来 进入到宝塔的www/server/data 控制台输入find / -name mysqlbinlog -print 找到binlog地址 然后软连到usr/bin ln -fs /www/server/mysql/bin/mysqlbinlog /usr/bin 然后找到你要恢复的文件 mysqlbinlog /www/server/data/mysql-bin.000017 > 6.sql 然后会生成一个sql文件,导入表格就好了 发布者:全栈程序员栈长,转载请注明出处:https

    4.7K20编辑于 2022-09-01
  • 来自专栏开源部署

    MySQL数据库备份与恢复

    接下来我们了解一下如何对MySQL数据库的备份与恢复。 接下来我们来了解MySQL数据库备份的方法。 物理冷备份与恢复 物理冷备份一般使用tar命令直接打包数据库文件夹即可,但是进行备份之前必须关闭MySQL数据库。 mysql增量备份与恢复 增量备份的特点 与完全备份不同,增量备份没有重复数据,备份量较小,备份时间短;但其恢复麻烦,需要上次完全备份及完全备份之后所有的增量备份才能恢复,而且要对增量备份进行逐个反推恢复 用户名 -p 密码 基于时间点恢复:跳过某个发生错误的时间点实现数据恢复。 2 | | 3 | | 8 | +------+ //再次查看数据8已经恢复 不管使用增量恢复哪种方式恢复,都必须先恢复完整恢复!!!

    4.6K30编辑于 2022-08-18
领券