1.mysql 日志分为4种
- 查询日志 (生产环境不开,否则文件过大,浪费空间)
- 错误日志
- 慢查询日志 (主动开启,定时查看,并且可以设置时间,比如3s,为慢,那么查询效率>=3s的查询语句就记录在日志表中,并以此来优化sql )
- 二进制日志(1.主从服务配置,从服务器根据二进制文件,把主服务器的数据复制到从服务器 ;2.恢复误删数据,如果没有开启二进制日志,那么恢复数据就不属于mysql的范畴,只能进行磁盘恢复);
2.配置方式
windows :my.ini
linux :my.cnf
首先在文件打开日志记录方式,log-output=FILE //以文件的方式记录日志
- 查询日志
general-log=0 //0代表关闭,1代表开启
general-log=xxxx #查询日志 一切查询均进入
- 错误日志
log-error=xxxxx #这是错误日志
- 慢查询日志
slow-query-log=1 // 0代表关闭,1代表开启
log-slow-queries=xxxxx #慢查询日志
long_query_time=1 //这里设置秒,譬如一秒认为是慢的 则记录
- 二进制日志
默认不开,需要手动开启 : log-bin=“xxxx” //文件名或路径看我们的口味
使用mysql的专有工具来查看这个日志文件
3.使用二进制日志恢复数据
mysqlbinlog --stop-position=xxxx 日志文件名 | mysql -u root -p
代表从头恢复 到某个position
也可以使用--start-position=xxxx ,代表从这个点恢复到结尾
同样 根据日期恢复
--stop-date 和--start-date