mysqldump和bin-log都可以作为MySQL数据库备份的方式:
mysqldump和bin-log的主要区别如下:
show variables like '%log_bin%'; # ON 表示开启 表示关闭
#如果没有开启bin-log那么在[mysqld]下面配置如下内容
server_id=1
# 会根据 mysql-bin.00000x开始递增新增内容
log-bin=mysql-bin
binlog_format=Row
2.2 生成新的bin-log文件
方式1: 重启MySQL服务
方式2:flush logs
# 在操作数据恢复之前生成一下新的bin-log文件,避免影响后面的数据
# bin-log文件一般在MySQL安装目录存放数据的data目录中
方式1:SHOW BINLOG EVENTS IN 'mysql-bin.000001';
方式2: mysqlbinlog -v --set-charset=utf-8 mysql-bin.000001>backuptmp.sql
方式1:
方式2:
mysqlbinlog -v mysql-bin.000001 --start-position=1963 --stop-position=2385 | mysql -uroot -padmin
这里可以看到我们之前删除id为3的数据已经恢复回来了。