开启MySQL二进制日志

1 查看MySQL的二进制日志是否开启
show variables like ‘%log_bin%’;
在这里插入图片描述
2 在配置文件的[mysqld]中添加如下配置 ,
log-bin = /server/mysql_data/mysql-bin

3 重启数据库后配置即可生效
/etc/init.d/mysqld restart

4 再次查看 数据库已经开启二进制日志
在这里插入图片描述

mysqlbinlog日志开启

1.登陆mysql数据库,然后使用下面命令检查是否开启binlog
show variables like ‘%log_bin%’;
在这里插入图片描述
2.查看mysql的配置文件/etc/my.cnf并没有关于binlog的配置(注意windows系统下mysql的配置文件名为my.ini)
在/etc/my.cnf中的[mysqld]下面增加以下内容
log-bin=/usr/local/mysql/logs/mysql_bin #设置日志路径,注意路经需要mysql用户有权限写
binlog-format=Row #设置日志格式
server-id=1 #5.7及以上版本的话,不加server-id重启mysql服务会报错,5.7以下版本就不用加了。 随机指定一个不能和其他集群中机器重名的字符串,如果只有一台机器,那就可以随便指定了。
在这里插入图片描述
3.重启mysql服务
在这里插入图片描述
4.mysql用root登录之后使用命令
show variables like ‘%log_bin%’;进行查看
binlog已经开启成功了
在这里插入图片描述

四、mysqlbinlog日志清除
1.执行“reset master;”命令,该命令将删除所有二进制日志,新日志的编号从“000001” 开始,命令如下:
Mysql>reset master;

2.执行“Purge master logs to ‘mysql-bin.*’” 命令,该命令将删除 “*****” 编号之前的所有日志,下列中删除了“mysql-bin.000015”之前编号的所有日志:
Mysql>purge master logs to ‘mysql-bin.000015’;

3.执行“purge master logs before ‘yyyy-mm-dd hh24:min:ss’”命令,该命令将删除日期为“yyyy-mm-dd hh24:mi:ss”之前产生的所有日志,下列中删除了日期在“2010-05-22 01:00:00”之前的所有日志:
Mysql>purge master logs before ‘2010-05-22 01:00:00’;

4.设置参数—expire_logs_days=#(days),此参数的含义是设置日志的过期天数,过来指定的天数后日志将会被自动删除:
#vi /etc/my.cnf
[mysqld]
–expire_logs_days=3 #3天前的日志都会被删除,系统自动删除

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐