log-bin

装mysql,运行一段时间后,在mysql目录下出现一堆类似mysql-bin.000***,从mysql-bin.000001开始一直排列下来,而且占用了大量硬盘空间,高达几十个G. 对于这些超大空间占用量的文件我们应该怎么办呢?

那么mysql数据库文件夹中的mysql-bin.00001是什么文件?

mysql-bin.000001、mysql-bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。

这些形如mysql-bin.00001的文件主要是用来做什么的呢?

1:数据恢复

如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。

2:主从服务器之间同步数据
主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。

如果不想要这些文件应该怎么做呢?

1:只有一个mysql服务器,那么可以简单的注释掉这个选项就行了。
vi
/etc/my.cnf把里面的 log-bin 这一行注释掉,重启mysql服务即可。

2:如果你的环境是主从服务器,那么就需要做以下操作了。

A:在每个从属服务器上,使用SHOW SLAVE
STATUS来检查它正在读取哪个日志。
B:使用SHOW MASTER LOGS获得主服务器上的一系列日志。

C:在所有的从属服务器中判定最早的日志,这个是目标日志,如果所有的从属服务器是更新的,就是清单上的最后一个日志。

D:清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步。

简单地说,这些MySQL目录下的形如mysql-bin.000***的文件时MySQL的事务日志。

删除复制服务器已经拿走的binlog是安全的,一般来说网络状况好的时候,保留最新的那一个足以。

(缺点是将无法使数据库恢复先前的状态)

时间: 2024-07-29 03:17:08

log-bin的相关文章

/bin/gnugk: error while loading shared libraries: libcrypto.so.0.9.8:

[[email protected] ~]# /bin/gnugk -c /etc/gnugk/gnugk.ini -ttttt -o /var/log/gnugk.log/bin/gnugk: error while loading shared libraries: libcrypto.so.0.9.8: cannot open shared object file: No such file or directory 解决方法: [[email protected] ~]# yum -y

nodejs学习资料

NodeJS基础 什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器. 每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情.例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象.而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS

sarg分析squid日志

1.SARG介绍 SARG的全称是:Squid Analysis Report GeneratorSARG非常好用的Squid日志分析工具,它输出html格式,可以详细列出了每一位用户访问internet的站点信息,时间占用信息,排名,连接次数,访问量,访问量等.软件的主页:http://sarg.sourceforge.net/sarg.php 目前最新的版本是sarg-2.3.1 ####要使用SARG必须有网页页面,所以先安装apache.yum -y install httpd* ,安装

Nginx日志切割并计划任务自动上传到FTP服务器

枫城浪子原创,转载请标明出处! 微信bh19890922 QQ445718526,490425557 更多技术博文请见个人博客: https://fengchenglangzi.000webhostapp.com http://fengchenglangzi.blog.51cto.com 一.简述 Nginx WEB服务器每天会产生大量的访问日志,而且不会自动地进行切割,如果持续天数访问,将会导致该access.log日志文件容量非常大,不便于SA查看相关的网站异常日志,并且后期进行分割非常不易

Centos7+Mariadb+Keepalived实现Mariadb(MYSQL)的高可用(HA)

我们前面几篇文章中有介绍了Keepalived的功能--HA,关于MySQL-HA,目前有多种解决方案,比如heartbeat.drbd.mmm.共享存储,但是它们各有优缺点.heartbeat.drbd配置较为复杂,需要自己写脚本才能实现MySQL自动切换,对于不会脚本语言的人来说,这无疑是一种脑裂问题:对于mmm,生产环境中很少有人用,且mmm 管理端需要单独运行一台服务器上,要是想实现高可用,就得对mmm管理端做HA,这样无疑又增加了硬件开支:对于共享存储,个人觉得MySQL数据还是放在本

七天学会NodeJS

NodeJS基础 什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器. 每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情.例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象.而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS

使用日志生成工具 验证kafaka 安装情况

一.脚本准备:从老师处拿到 logger.sh.zip 解压 unzip logger.sh.zip 进到该目录 cd logger 二.启动:nohup sh shelllogger.sh & 查看 access.log 和 nohup.out 启动后生成 cat access.log 三 将日志实时传送到kafka指定主题中 nohup tail -f /home/stream/zookeeper/logger/access.log | bin/kafka-console-producer.

HELL编程-shell编程实战

监控思路.架构介绍 需求: 使用shell定制各种个性化告警工具,但需要统一化管理.规范化管理. 思路:指定一个脚本包,包含主程序.子程序.配置文件.邮件引擎.输出日志等.主程序:作为整个脚本的入口,是整个系统的命脉.配置文件:是一个控制中心,用它来开关各个子程序,指定各个相关联的日志文件.子程序:这个才是真正的监控脚本,用来监控各个指标.邮件引擎:是由一个php程序来实现,它可以定义发邮件的服务器.发邮件人以及收邮件人.输出日志:整个监控系统要有日志输出. 要求:我们的机器角色多种多样,但是所

解决WIN7与虚拟机CentOS的文件夹共享问题

一.系统与软件 WIN7 64bit.VirtualBox 5.0.14.CentOS 6.5.SecureCRT 7.2.3 二.使用文件夹共享需要安装增强功能,但是安装时无法读取光盘iso文件 三.为了方便操作,配置静态IP,并使用CRT连接上去(参考http://my.oschina.net/allman90/blog/294847?fromerr=CotpElUe) [[email protected] ~]# vi /etc/sysconfig/network-scripts/ifcf

最新Linux运维必会22道Shell编程面试题精彩讲解

1.批量创建自带随机字符串的文件多种方法 本次运用到了$RANDOM变量 创建命令如下: echo $RANDOM|md5sum|tr "[0-9]" "[a-z]"|cut -c 3-8 通过echo输出随机数,然后通过md5加密,再将数字转换为字母,然后取其中的10个 具体脚本实现如下: #!/bin/bash #echo $RANDOM|md5sum|tr "[0-9]" "[a-z]"|cut -c 3-8