MySQL的二进制日志(binary log)是一个二进制文件,主要用于记录修改数据或有可能引起数据变更的MySQL语句。二进制日志(binary log)中记录了对MySQL数据库执行更改的所有操作,并且记录了语句发生时间、执行时长、操作数据等其它额外信息,但是它不记录SELECT、SHOW等那些不修改数据的SQL语句。二进制日志(binary log)主要用于数据库恢复和主从复制,以及审计(audit)操作。
二进制日志状态查看
sql语句:
show variables like 'log_bin';
系统变量log_bin的值为OFF表示没有开启二进制日志(binary log)。ON表示开启了二进制日志(binary log)
开启bin-log二进制日志
windows系统:my.ini 配置文件 查到或添加:
log-bin=mysql-bin
linux系统:my.cnf配置文件添加:
server-id = 1
log-bin=mysql-bin
注意:配置文件修改保存后,一定要重启mysql;
二进制日志有效期
为了避免我们实际的服务器长期使用过程中被mysql的binlog 日志占据大量空间,导致mysql服务宕机,故需设置binlog日志保留天数,到期后自动删除。
查看当前日志保存天数:
show variables like '%expire_logs_days%';
默认是0,即永不过期。
方式一:通过设置全局参数修改binlog 有效期(临时有效,重启后失效),单位:天:
set global expire_logs_days=30;
设置为保存30天
方式二:修改 my.cnf 或 my.ini,需重启,重启后生效 单位:天:
expire_logs_days = 30
若没有则添加上
重启mysql
service mysqld restart
评论列表(0条)