手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

MySQL binlog日志存放位置的修改

[日期:2018-01-07] 来源:Linux社区  作者:yanh0606 [字体: ]

最近项目上装的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,就会列出文件的路径来

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

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

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

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

下面列几个常用的命令

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

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

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

 

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

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

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

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

本文永久更新链接地址http://www.linuxidc.com/Linux/2018-01/150149.htm

linux
相关资讯       MySQL binlog  MySQL binlog日志 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款