蛋疼,定时任务设置错误。把数据给删除了。还有一次是服务器时间不对,也把数据给删除了。

还好,开启了二进制日志,才算把数据找回,但是速度效率也太低。

痛定思变。在把一切交由电脑工作的时候,也要做好一定的防备工作。

先说缘由,本来是定时在晚上一个脚本执行清理数据的任务。结果不小心写错了。

本该是

55 20 31 10 * /home/tool/clean.sh

结果没细查直接就写成了

55 20 * * * /home/tool/clean.sh

结果大家都知道的了。

大惊之下进入mysql目录下看了一下日志文件还在。

回想一下日期,是10月30日清理的数据,那么10月31日把数据又删除了一次,在没有做定时备份的情况下,只有把从10 30日到10月31日的数据重新做一次。

于是,利用mysqlbinlog的起始日期功能。

mysqlbinlog --start-date="2013-10-30 20:55:00" mysql-bin.000004 | mysql -uroot -p密码

这样就恢复了第一个。

然后一直这样操作到时间点的最后一个

mysqlbinlog --stop-date="2013-10-31 20:50:00" mysql.bin.000009 | mysql -uroot -p密码

数据终于找回。

大约5个G的数据,用了2个小时,真蛋疼。以后如果记得每两小时或者每4小时备份一下,那么大概需要15-20分钟就可以把数据找回来。

比较靠谱的做法是:

  每隔4小时备份一下数据。

  每两天清理一日志文件。

MySQL数据库恢复的经历。的更多相关文章

  1. MySql数据库恢复(*frm)文件

    mysql数据库恢复(*frm)文件 WorkBench 在使用虚拟服务器时,服务器提供商一般不会像我们使用本地数据库一样:使用导入导出(这样的文件后缀是*.sql).大部分时候提供的是一个文件夹,里 ...

  2. mysql数据库恢复

    数据库恢复注意事项: # 数据恢复和字符集关联很大,如果字符集不正确会导致恢复的数据乱码. #MySQL命令和source命令恢复数据库的原理就是把文件的SQL语句,在数据库重新执行的过程. 1.利用 ...

  3. 阿里云mysql数据库恢复总结,mysql binlog日志解析

    由于意外..阿里云mysql中有一张表被全部删除了,深吸三口气候,开始解决. 首先用凌晨的自动备份的,进行全量恢复,然后找binlog日志(见下文),查找从全量备份到数据删除之间的记录 这导致了一个问 ...

  4. MySQL数据库恢复(使用mysqlbinlog命令)

    binlog是通过记录二进制文件方式来备份数据,然后在从二进制文件将数据恢复到某一时段或某一操作点. 1:开启binlog日志记录 修改mysql配置文件mysql.ini,在[mysqld]节点下添 ...

  5. MySQL 数据库恢复一张表中的数据

    如果使用 mysqldump -uroot -p123 user > test.sql备份了user数据库中的所有数据,但是当前只想要恢复该数据库的某张表数据,该怎么处理呢? 已知恢复整个数据库 ...

  6. 阿里云mysql数据库恢复到本地

    本地环境为win10,mysql引擎为InnoDB 第一步:服务里面停掉mysql 第二步:把my.ini 的 innodb_force_recovery  设置为0 第三步:把.frm和.idb文件 ...

  7. MySQL数据库基础详解(非原创)

    文章大纲 一.数据库简介二.Mysql数据库简介三.Mysql安装与服务启动(Windows版本)四.Mysql图形化工具五.Mysql存储引擎精讲六.Mysql数据类型介绍七.Mysql主要专业名称 ...

  8. 记一次mysql数据库被勒索(下)

    背景: nextcloud的mysql数据库被黑,删库勒索.参考:记一次mysql数据库被勒索(上) mysql数据库恢复成功,nextcloud还是无法连接.参考:记一次mysql数据库被勒索(中) ...

  9. 2020重新出发,MySql基础,MySql数据库备份与恢复

    @ 目录 MySQL数据库备份与恢复 数据库为什么需要备份 MySQL备份类型 MySQL热备份及恢复 逻辑备份 mysqldump SELECT INTO-OUTFILE mydumper 裸文件备 ...

随机推荐

  1. P264练习题1.2题

    package 集合; import java.util.*; public class fourteen { public static void main(String[] args) { //1 ...

  2. ECMAScript 6新特性(1)数组篇

    数组现有的方法: .concat():连接两个或更多的数组,并返回结果. .join():把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. .pop():删除并返回数组的最后一个元素 . ...

  3. Opencv中在图片上显示文本

    1.cvPutText函数(在图像中加入文本) void cvPutText( CvArr* img, const char* text, CvPoint org, const CvFont* fon ...

  4. Twitter CEO:有望进军中国 不会改变原则

    新浪科技讯 8月12日下午消息,据台湾“中央社”报道,Twitter CEO科斯特洛(Dick Costolo)日前接受<日经新闻>专访时指出,Twitter有望进军中国大陆,科斯特洛表示 ...

  5. 阿里公共DNS 正式发布了

    喜大普奔!集阿里巴巴集团众多优秀工程师开发维护的公共DNS---AliDNS终于上线啦!作为国内最大的互联网基础服务提供商,阿里巴巴在继承多年优秀技术的基础上,通过提供性能优异的公共DNS服务,为广大 ...

  6. JVM-class文件完全解析-魔数

    魔数(Magic Number) 魔数和Class文件的版本. 一个文件能否被Java虚拟机接受,不是通过文件的扩展名来进行识别的,而是通过魔数来进行识别.这主要是基于安全方面的考虑,因为文件的扩展名 ...

  7. C#线程状态简析

    在C# 语言世界中,当我们创建一个新的子线程,该线程状态为unstarted, 子线程开始之后,子线程状态为Running,IsAlive 为true: 线程响应 Thread.Start 并开始运行 ...

  8. color 的一些处理

    1.UIImage转换成UIcolor cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@" ...

  9. hd oj2025

    Ps:尼玛这道题简直坑爹...就是直接比较ascii码....无脑题,想复杂了... 代码:#include "stdio.h"#include "string.h&qu ...

  10. Spring中配置文件applicationContext.xml配置详解

    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...