记录一下基于docker-composer的mysql环境下进行误删除数据恢复的步骤
线上系统使用这样的cron规则1
0 6 * * * cd /docker-compose/mysql && docker-compose exec -T mysql mysqldump -A -F --triggers --routines --events > backup/$(date '+\%u').sql
-F, --flush-logs
切换到下一个binlog文件,这样全量备份的时候flush binlog,在要恢复数据的时候,start-time或者position不用找也不用填--triggers --routines --events
不加的话会在导出的文件里第一行有一条警告信息0 6 * * *
每天凌晨6点$(date '+\%u')
返回今天周几(1-7)(在crontab里面百分比符号%需要转义)
停机,停止业务
防止恢复期间产生新的数据,然后在数据恢复后丢失了这部分新数据