简介 在生产的过程中有这么一个业务场景:比如我在2016-11-19 09:30:00 通过mysqldump的方式备份了数据库,但是在2016-11-19 10:30:00的时候数据库崩溃了,如果通过我们的备份文件来恢复,也只能恢复到 2016-11-19 09:30:00 这个时间点,而9.30分到10:30分这一个小时的数据恢复不了,这时候我们可以通过mysql的binlog日志来恢复没有备份到的这一小时的数据. 1.开启mysql的binlog日志(默认情况下没有开启) #vim /et…
QQ群里面有人问起这个问题:    用load data 导入数据的时候,在binlog文件中记录的不是insert 语句,这样的话,如果用load data 导入数据,当需要恢复数据库的时候  binlog恢复就不行了 load data local infile '/root/table.txt' into table test.table ; 生成binlog 日志 然后用mysqlbinlog解析binlog日志,再more查看如下: # at 147405 #130718  3:15:…
利用日志文件恢复MYSQL数据库 650) this.width=650;" onclick='window.open("http://blog.51cto.com/viewpic.php?refimg=" + this.src)' alt="" src="http://img1.51cto.com/attachment/201003/201003111268312810984.jpg" border="0" /&g…
linux下开启mysql的binlog日志功能 1.配置mysql配置文件my.cnf(内容如下). #配置文件储存的位置log-bin=mysql-bin#5.7以及以上版本需要配置这一行(保证唯一性,可随意输入)server-id=123#binlog的格式 :statement(保存语句).row(保存执行后的结果).mixed(同时保存语句和结果)binlog-format=ROW#表示每执行一次就同步sync-binlog=1 2.重启mysql服务后.查看日志功能是否正常开启 my…
说明:一般来说,如果恢复的binlog量不大,可以使用此方法来恢复:mysqlbinlog /data/mysqlbak/binlogbak/restoredb-bin.000018 |mysql -u root -pchengce243 但是如果binlog量非常大,使用此方法会非常慢,下面介绍一种方法,让MySQL模拟成slave恢复,速度非常快. 测试表中数据mysql> select * from testdb.testtab;+-------+-----------+| id | na…
备份先做一次完整备份: innobackupex --defaults-file=/etc/my.cnf --user root --password chengce243 /data/mysqlbak 执行完命令后,/data/mysqlbak 目录下会生成目录: 2018-08-06_14-19-12 记下操作后的 position 点mysql> show master status;+----------------------+----------+--------------+---…
.frm文件:保存了每个表的元数据,包括表结构的定义等: .ibd文件:InnoDB引擎开启了独立表空间(my.ini中配置innodb_file_per_table = 1)产生的存放该表的数据和索引的文件. 1.安装相同版本的mysql: 找回表结构 2.找回表结构(若有表结构,直接导入表即可) 建立同名的表(InnoDB),不知道列数的话随意一个字段即可(如果字段个数不一致会报错,去日志文件中查看有列数重复这些步骤) 关闭mysql服务 用需要恢复的.frm文件覆盖新生成的.frm文件.…
最近客户有个需求,小弟对于运维的东西也是半瓶醋,所以就果断的摸索了下.折磨了一个晚上终于算是搞定了.因为是两个不同的服务器,本来想用ftp,无奈小弟不是很熟悉,所以就用了scp,但是scp有个问题就是要输入密码才能复制,这下把小弟急坏了,那我这shell脚本咋办, 我的需求是我要每天定时导出三个表,然后通过scp复制到另外一台服务器上,再恢复这三个表的数据. 俗话说,家事找度娘,小弟就翻阅了度娘的衣柜,终于算是找到了件合身的衣服. 该文章链接是这个http://blog.csdn.net/xif…
背景:因为机器损坏,数据库的索引文件什么的都损坏了.只留下了一个mysql的data目录… 此方法恢复数据的前提:建表用的innodb索引   备注:如果mysql的目录还都在,可以先尝试,将mysql下的目录都拷贝到一个新mysql目录下,启动看看能不能用,不能用后再尝试下面方法   mysql会有一个data目录存储表结构和表数据.下面的目录结构大概如下: ib_logfile0 ib_logfile1 ibdata1 ibtmp1 xx数据库1 xx数据库2   每个数据库目录下面的表内容…
1.安装工具Percona XtraBackup MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3,安装指导请参见官方文档Percona XtraBackup 2.3. MySQL 5.7版本需要安装 Percona XtraBackup 2.4,安装指导请参见官方文档Percona XtraBackup 2.4. MySQL 8.0版本需要安装 Percona XtraBackup 8.0,安装指导请参见官方文档Percona XtraBackup 8.0.…