1.使用binlog日志
问题
利用binlog恢复库表,要求如下:
1)启用binlog日志
2)创建db1库tb1表,插入3条记录
3)删除tb1表中刚插入的3条记录
4)使用mysqlbinlog恢复删除的3条记录
步骤
实现此案例需要按照如下步骤进行。
步骤一:启用binlog日志
1)调整/etc/my.cnf配置,并重启服务
[root@dbsvr1 ~]# vim /etc/my.cnf
[mysqld]
… …
log-bin=mysql-bin //启用二进制日志,并指定前缀
… …
[root@dbsvr1 ~]# service mysql restart
Shutting down MySQL… [确定]
Starting MySQL… [确定]
2)确认binlog日志文件
新启用binlog后,每次启动MySQl服务都会新生成一份日志文件:
[root@dbsvr1 ~]# ls /var/lib/mysql/mysql-bin.*
/var/lib/mysql/mysql-bin.000001 /var/lib/mysql/mysql-bin.index
其中mysql-bin.index文件记录了当前保持的二进制文件列表:
[root@dbsvr1 ~]# cat /var/lib/mysql/mysql-bin.index
./mysql-bin.000001
重启MySQL服务程序,或者执行SQL操作“FLUSH LOGS;”,会生成一份新的日志:
[root@dbsvr1 ~]# ls /var/lib/mysql/mysql-bin.*
/var/lib/mysql/mysql-bin.000001 /var/lib/mysql/mysql-bin.index
/var/lib/mysql/mysql-bin.000002
[root@dbsvr1 ~]# cat /var/lib/mysql/mysql-bin.index
./mysql-bin.000001
./mysql-bin.000002
步骤二:利用binlog日志重做数据库操作
1)执行数据库表添加操作
创建db1·库tb1表,表结构自定义:
mysql> CREATE DATABASE db1;
Query OK, 1 row affected (0.05 sec)
mysql> USE db1;
Database