起因:宝塔安装的mysql 线上运行突然表包括库都不见了,想办法恢复数据库
登陆mysql
cd /www/server/mysql/bin
mysql -u root -p
查看binlog日志是否打开
show variables like 'log_%';
log_bin如果为 ON 则为开启状态,如果开启了才可以进行下一步操作
查看下binlog日志列表
binlog日志文件目录在 /www/server/data目录下
show master logs;
下载生成sql文件
进入mysql bin目录执行./mysqlbinlog
cd /www/server/mysql/bin
标题导出sql文件(执行sql文件恢复)
./mysqlbinlog --set-charset=utf8 /www/server/data/mysql-bin.000011 > tmp.sql;
根据时间点恢复指定文件,数据量大建议使用时间点恢复,sql文件执行起来会失败。
./mysqlbinlog --start-datetime="2023-12-20 21:10:33" --stop-datetime="2023-12-23 21:12:05" /www/server/data/mysql-bin.000011 | mysql -u root -p
标记的为每条记录的时间点,根据需求执行对应范围的数据。