1. 进行全量备份
innobackupex --user=root --password /fullback
2.第一次增量
innobackupex --user=root --password --incremental-dir=/increment_1 /fullback
3.第二次增量
innobackupex --user=root --password --incremental-dir=/increment_2 /fullback
4.合并增量
xtrabackup --prepare --target-dir=/fullback --incremental-dir=/increment_1
xtrabackup --prepare --target-dir=/fullback --incremental-dir=/increment_2
binlog有三种format,statement,row,mixed
statement是对实际的sql语句进行记录
row是记录每行所做的修改,更新语句会写入日志
mixed是在statement的基础上看需要切换row格式
show variables like 'binlog_format'
2. 设置binlog格式(临时修改,重启后失效,要永久生效可以再my.cnf中设置并重启服务生效)
set @@global.binlog_format = row;
3. 启用二进制日志
在cnf配置文件中添加 [mysqld]
log_bin = /var/lib/mysql/binlog
server_id = 200
重启服务,systemctl restart mysqld
4.显示服务器所有的二进制日志
show master logs; 或者 show binary logs;
5.删除、刷新日志
reset master;删除所有
purge binary logs to <二进制日志名>删除这之前的日志,仅保留方括号
flush logs 重新启用新的binlog文件
6. 读取二进制日志,并恢复数据库
mysqlbinlog binlog.000001 > mysql_extra
cat mysql_extra | mysql -f -hlocalhost -uroot -p
补充:可以利用二进制日志,进行时间点和从偏移量中提取所需要的binlog进行恢复
mysqlbinlog xxx --start-datetime="stamp1" --stop-datetime="stamp2" >mysql_extra
mysqlbinlog xxx --start-position=100 --stop-position=179 > mysql_extra
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。