查看可以看到是444。
step 2:恢复到备份
dbadmin@test 11:16:25>source test.sql
dbadmin@test 11:17:26>select from t;
+-------+
| id |
+-------+
| 1 |
+-------+
1 row in set (0.00 sec)
step 3: 因为我们在备份的时候使用了master-data的参数,所以可以直接看到备份时候的最后位置,然后应用中间的log。查看可以看到是187。
我们使用mysqlbinlog得到这一段时间的操作,其实我们也可以用这个工具得到操作后使用sed进行undo的操作。
mysqlbinlog --start-position=187 --stop-position=444 mysql-bin.000004 > increment.sql
dbadmin@test 11:44:37>source /u01/my3307/log/increment.sql dbadmin@test 11:44:50>select from t; +------+ | id | +------+ | 1 | | 2 | +------+
至此数据恢复。
二、mysqlbackup
mysqlbackup是Oracle公司提供的针对企业的备份软件,全名叫做MySQL Enterprise Backup,是一个收费的软件。
我们简单来看一下这个工具的使用。
查看所有的帮助:
我这里只是截取了一小部分,这个帮助很长,参数很多,功能很全,是oracle官方主推的备份方式。
全量备份
mysqlbackup --user=root --password=ucjmh --databases='t1' --encrypt-password=1 --with-timestamp --backup-dir=/u01/backup/ backup
解释一下参数:
databases 要备份的
with-timestamp 产生一个当前时间的备份目录。mysqlbackup这个工具要求一个空目录才能做备份。所以这个会常用。
backup-dir 备份的目录 。
compress:压缩备份 这个提供了多种压缩方法和压缩级别。1--9,压缩比依次递增。
backup 是备份的方式, 一共有如下几种方式,我会在一个恢复案例里把常用的几个都用到。
Backup operations: backup, backup-and-apply-log, backup-to-image
Update operations: apply-log, apply-incremental-backup
Restore operations: copy-back, copy-back-and-apply-log
Validation operation: validate
Single-file backup operations: image-to-backup-dir, backup-dir-to-image, list-image, extract
其实,在大多数情况下,单个文件备份,使用backup-to-image命令创建,性能优于backup。buckup这个命令只执行一个完整的备份过程的初始阶段。需要通过再次运行mysqlbackup运用apply-log 命令,使备份一致。
mysqlbackup --user=root --password=ucjmh --databases='t1' --encrypt-password=1 --with-timestamp --backup-dir=/u01/backup/2017-04-28_12-49-35/ apply-log
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-51609-3.html
混乱继续进行下去