- 浏览: 137988 次
文章分类
最新评论
装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:主从服务器之间同步数据
主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。
如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。
2:主从服务器之间同步数据
主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。
如果不想要这些文件应该怎么做呢?
1:只有一个mysql服务器,那么可以简单的注释掉这个选项就行了。
vi /etc/my.cnf把里面的 log-bin 这一行注释掉,重启mysql服务即可。
2:如果你的环境是主从服务器,那么就需要做以下操作了。
A:在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
B:使用SHOW MASTER LOGS获得主服务器上的一系列日志。
C:在所有的从属服务器中判定最早的日志,这个是目标日志,如果所有的从属服务器是更新的,就是清单上的最后一个日志。
D:清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步。
vi /etc/my.cnf把里面的 log-bin 这一行注释掉,重启mysql服务即可。
2:如果你的环境是主从服务器,那么就需要做以下操作了。
A:在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
B:使用SHOW MASTER LOGS获得主服务器上的一系列日志。
C:在所有的从属服务器中判定最早的日志,这个是目标日志,如果所有的从属服务器是更新的,就是清单上的最后一个日志。
D:清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步。
简单地说,这些MySQL目录下的形如mysql-bin.000***的文件时MySQL的事务日志。
删除复制服务器已经拿走的binlog是安全的,一般来说网络状况好的时候,保留最新的那一个足以。
(缺点是将无法使数据库恢复先前的状态)
发表评论
-
(转)mysql 格式化日期 DATE_FORMAT,FROM_UNIXTIME,UNIX_TIME等
2013-03-01 16:40 11151. DATE_FORMAT() 函数用于以不同的格式显示日 ... -
(转载)mysql通过关联修改表中两个字段的值
2013-01-21 15:28 1117mysql通过关联修改表中 ... -
转Error Code: 2006 - MySQL server has gone away(Error Code: 2006 - MySQL 服务器已离线)
2012-12-27 11:14 928刚才在导入数据库的时候 SQLyog 报错了Error Cod ... -
mysql添加用户和用户权限
2013-01-21 15:29 1845Mysql添加用户使用可以对mysql数据库用户表有操作权限的 ... -
主从服务器配置
2012-12-18 17:06 744安装环境:主服务器::192.168.1.10从服务器::19 ... -
同机MySQL主从同步设置
2012-12-18 17:02 7901、 配置主库my.ini port=3306 data ... -
MySQL主从复制与读写分离
2012-12-18 16:05 710MySQL主从复制(M ... -
mysql主从复制
2012-12-18 15:23 646mysql主从复制 怎么安装mysql数据库,这里不说了,只 ... -
(转载)mysql 远程连接速度慢的解决方案
2012-12-14 15:35 686PHP远程连接MYSQL速度慢,有时远程连接到M ... -
(转载)MySQL常用操作基本操作
2012-12-13 11:18 669MySQL常用操作基本操作,以下都是MySQL5.0下测试通过 ... -
MySQL 5.5版本下my.ini内[mysqld]项中不能再写default-character-set=utf8
2012-12-13 11:12 745原来在5.1版本时,为了解决中文乱码问题设置默认字符集为utf ... -
mysql从一个表向另一个表转移数据的存储过程
2012-12-11 10:59 822DELIMITER $$ USE `sms`$$ DROP ... -
(转载)MYSQL数据表损坏的原因分析和修复方法
2012-11-28 09:23 700一、表损坏的原因分析 以下原因是导致mysql 表毁坏的 ... -
MySQL日期时间函数大全
2012-11-17 10:38 638DAYOFWEEK(date) 返回日期date是星期几(1 ... -
(转载)Windows下安装MySQL最佳实践
2012-10-15 17:41 715一、背景 其实在Windows下安装MySQL可谓是一件很简 ... -
mysql 数据表合并并且只重复数据只读取一条
2012-09-21 14:56 1710mysql教程 数据表合并并且只重复数据只读取一条//首先我们 ... -
Linux下设置MySQL编码
2012-09-11 13:59 776在某些时候,我们需要要修改mysql默认数据库的编码,以保证某 ... -
mysql show processlist 显示mysql 查询进程
2012-09-10 16:05 817processlist命令的输出结果显示了有哪些线程在运行,可 ... -
MySQL中的临时表使用方法
2012-09-06 09:51 604当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量 ... -
让MySQL支持InnoDB
2012-08-22 09:25 820情况一 linux 下 G一 ...
相关推荐
如果只有一台MySQL服务器,且不需要进行数据恢复或主从同步,可以在配置文件`my.cnf`中取消`log-bin`选项的注释,然后重启MySQL服务来停止生成二进制日志。 对于有主从服务器环境的情况,清理二进制日志需要更谨慎...
MySQL bin-log 日志清理方式 MySQL bin-log 日志是一种重要的数据库日志机制,它可以记录数据库的所有操作,以便在出现问题时进行数据恢复和主从服务器之间的同步数据。然而,随着时间的推移,bin-log 文件会不断...
MySQL的`log-bin`日志,也称为二进制日志(Binary Log),是数据库管理系统中用于记录所有改变数据库状态的非DDL(Data Definition Language)操作的重要组件。它记录了数据库中的INSERT、UPDATE、DELETE等操作,以...
在MySQL中,bin-log(二进制日志)是一个关键特性,用于记录所有改变数据库状态的语句,以便于数据恢复、主从复制等场景。然而,在开启bin-log时,可能会遇到一些问题,比如在创建存储过程时出现的错误:`ERROR 1418...
mysql打开bin-log日志后,mysql数据库的非查询操作会将记录保存到bin-log文件中。一般bin-log日志文件不能打开查看的,需要用到mysql的工具进行。假设/mysql/data/目录中存放着二进制文件mysql-bin.000011。需要将...
这个错误通常表明MySQL无法找到它的二进制日志索引文件(mysql-bin.index),并且错误代码13通常表示权限问题。本文将深入探讨这个问题的原因以及解决方法。 首先,mysql-bin.index文件是MySQL二进制日志的关键组成...
开启mysql-binlog操作 binlog日志用于记录所有更新了数据或者已经潜在更新了数据的所有语句。语句以“事件”的形式保存,它描述数据更改。当我们因为某种原因导致数据库出现故障时,就可以利用binlog日志来挽回...
log-bin = /data/mysql/logs/mysql-bin.log expire_logs_days = 7 max_binlog_size = 100m binlog_cache_size = 4m max_binlog_cache_size = 512m ``` 这些配置分别设置了日志格式、日志路径、日志清理时间、单个...
2. **conf**:配置文件夹,存放如 `hive-site.xml` 和 `log4j.properties` 等配置文件,用于自定义 Hive 的运行环境和日志设置。 3. **lib**:包含 Hive 运行所需的库文件,如 JDBC 驱动、依赖的 Hadoop 库和其他第...
需要注意的是,在 MySQL 5.7 及以下版本中,我们只需要添加 log-bin=/var/lib/mysql/mysql-bin 这一个参数就可以启用 Binlog,但是是在 MySQL 5.7 及以上版本中,需要添加两个参数。 开启 Binlog 是 MySQL 数据库的...
log-bin = mysql-bin ``` 其中,`server_id` 指定了服务器的唯一标识,`binlog-do-db` 指定了需要同步的数据库,而 `log-bin` 指定了二进制日志文件的路径。 然后,在从服务器上,需要修改 /etc/my.cnf 文件,添加...
- **二进制日志**:启用了二进制日志功能,`log-bin=master-bin`表示二进制日志的前缀名为`master-bin`;`log-bin-index=master-bin-index`指定了二进制日志索引文件的名称;`binlog_format=mixed`定义了二进制日志...
MySQL 提供了一种强大的工具,即二进制日志(bin-log),用于记录所有的更改操作,以便于进行数据库的备份和恢复。本文将详细介绍如何利用 bin-log 日志来还原数据库。 首先,我们确认 MySQL 服务器是否已经启用了 ...
mysql> mysqlbinlog /var/log/mysql/mysql-bin.000040 >/var/log/mysql/000040.txt; ``` - `show variables like 'log_%';`可查看所有日志相关的变量状态,而`show variables like 'log_bin';`则显示二进制日志的...
binlog的开启和配置是实现增量数据收集的前提,通常在MySQL配置文件(如my.cnf)中设置`log-bin`选项来启用。 `mysql-binlog-connector-java` 库提供了一个简单的方式来连接到MySQL服务器并订阅binlog事件。这个库...
启用日志,和查看日志 有以下几种日志: 错误日志: -log-err 查询日志: -log 慢查询日志: -log-slow-queries 更新日志: -log-update 二进制日志: -log-bin
在 Mysql 中, Binlog 日志可以通过在 my.cnf 中开启 binlog 来启用,例如:[mysqld] log-bin=/var/log/mysql/mysql-bin.log。重启数据库后, Binlog 日志将生效。 为了检查 Binlog 是否开启,可以使用 show ...