从删库到跑路 无忧
mysqlbinlog --no-defaults --start-datetime="2022-03-23 17:50:00" --stop-datetime="2022-03-23 18:00:00" -d testdb mysql-bin.000001|mysql -uroot -p testdb
说明下参数
--no-defaults 不加这个可能会执行报错 utf8个错误 --start 是恢复的开始时间 --stop是恢复的截止时间 -d 是指定数据库 mysql-bin.000001是从那个日志文件进行恢复
|后面的就是数据库的 账号和密码和数据库 这里不输入密码 所以是-p
目前我用的mysql版本是8.0.28 在docker里面安装的。
先开启binlog 在mysql的下面加2行
[mysqld] server-id = 1 log-bin = /var/lib/mysql/mysql-bin
#之前尝试一直不成功 是因为我用docker安装的,安装的时候系统时间配置不对,所以刚开始执行这个命令都没回复时间。所以大家测试的时候先看下mysql的那台服务器的系统事件是多少。‘
因为binlog产生是依赖于系统事件。