mysql修改binlog 位置_修改mysql的binlog的位置

本文介绍了在MySQL中遇到binlog日志填满磁盘的问题及解决方案。首先,讨论了binlog的重要性,然后详细阐述了如何更改binlog的存储位置到/home/logs,并配置自动清理。此外,提供了检查binlog状态、查看日志列表、刷新和清空日志等相关命令的使用方法。
摘要由CSDN通过智能技术生成

最近项目上装的mysql服务,分配的磁盘空间太小了,导致binlog两天时间就能打满,这里记录下处理方式

mysql的binlog日志是一个很重要的日志,以事件形式记录了所有的DDL和DML(除了数据查询语句)语句,还包含执行的消耗的时间,在数据丢失的紧急情况下,我们可以利用binlog日志功能进行数据恢复。

1、问题上面说了,默认情况下binlog日志默认在/var/spool/mail/root路径下,磁盘空间比较小很快就被binlog打满了,为了保证项目上能正常使用,之前是维护人员手动清理和备份。在找到重新挂盘和修改binlog日志路径方法前,先给现场的配置下自动清理。

2、配置自动清理在my.cnf文件中,这个文件路径不知道的话执行mysql --help | grep 'Default options' -A 1,就会列出文件的路径来

df4723ce10c85f2d1882aa2f22fa0565.png

修改配置文件,vi /etc/my.cnf,找到logbin的部分

000794a501bf8ee78dca677725e70d4a.png

路径因为测试环境没法挂盘,随便写了个路径,下面新建我们上面指定的文件夹mkdir -p /home/logs,然后重启mysql的时候报错了,经过一番折腾后,发现建的文件夹必须赋权限,泪目。。。chown -R mysql.mysql /home/logs

然后重启service mysql restart,去新建的目录下看看,已经有最新的日志了,我的截图日志比较多是因为我重启过好几次,每重启一次生成一次新的。

e810d6f9d134d3915e02f1c4252d8417.png

到这里更换路径和自动清理的工作就完成了。

下面列几个常用的命令

0、查看日志开启状态 show variables like 'log_%';

9f8ad0a181a4d81a5930fae68a14a32c.png

1、查看所有binlog日志列表 show master logs;

e430418f87b0902228db31d3bd90c60a.png

2、查看最新一个binlog日志的编号名称,及其最后一个操作事件结束点 show master status;

8a5a9a2343b2540f2f78e2a18a7bc705.png

3、刷新log日志,立刻产生一个新编号的binlog日志文件,跟重启一个效果 flush logs;

4、清空所有binlog日志 reset master;

5、日志查看,因为是二进制文件没法用vi等打开,可以用mysql的mysqlbinlog打开,/usr/bin/mysqlbinlog /home/logs/mysql-bin.000001,当然每个人路径可能不一样,这个只能自己去找了。

3e244d54b496b901cc75234370ab72a6.png

我这是新日志,也没做什么操作,所以日志内容没什么东西,具体的日志内容解释,以及如何通过binlog恢复数据,以后有时间的话再写写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值