`
pcajax
  • 浏览: 2162487 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

mysql-bin.000001文件的来源及处理方法[转]

 
阅读更多

mysql-bin.000001文件的来源及处理方法[转]
2010年11月15日 星期一 13:43

用ports安装了mysql以后,过一段时间发现/var空间不足了,查一下,会发现是mysql-bin.000001、mysql-bin.000002等文件占用了空间,那么这些文件是干吗的?这是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。

这样做主要有以下两个目的:
1:数据恢复
如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。
2:主从服务器之间同步数据
主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。

处理方法分两种情况:
1:只有一个mysql服务器,那么可以简单的注释掉这个选项就行了。
vi /etc/my.cnf把里面的log-bin这一行注释掉,重启mysql服务即可。
2:如果你的环境是主从服务器,那么就需要做以下操作了。
A:在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
B:使用SHOW MASTER LOGS获得主服务器上的一系列日志。
C:在所有的从属服务器中判定最早的日志,这个是目标日志,如果所有的从属服务器是更新的,就是清单上的最后一个日志。
D:清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步。
清理日志方法为:
PURGE MASTER LOGS TO 'mysql-bin.010';
PURGE MASTER LOGS BEFORE '2008-12-19 21:00:00';

如果你确定从服务器已经同步过了,跟主服务器一样了,那么可以直接RESET MASTER将这些文件删除。

======================================

之前发现自己10G的服务器空间大小,用了几天就剩下5G了,自己上传的文件才仅仅几百M而已,到底是什么东西占用了这么大空间呢?今天有时间彻底来查了一下:

mysql-log

看下上面的目录web根目录是放在/home 里面的,所有文件加起来才不到300M,而服务器上已经占用了近5G空间,恐怖吧,最后经我一步一步查询得知,原来是这个文件夹占了非常多的空间资源:

mysql-log1

原来如此,是mysql文件夹下的var目录占用空间最大,那里面是啥 内容呢?我们来看下:

mysql-log2

发现了如此多的 mysql-bin.0000X文件,这是什么东西呢?原来这是mysql的操作日志文件.我才几十M的数据库,操作日志居然快3G大小了.

如何删除mysql-bin.0000X 日志文件呢?

红色表示输入的命令.

[root@jiucool var]# /usr/local/mysql/bin/mysql -u root -p
Enter password: (输入密码)
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 264001
Server version: 5.1.35-log Source distribution

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql> reset master; (清除日志文件)
Query OK, 0 rows affected (8.51 sec)

mysql>

好了,我们再来查看下mysql文件夹占用多少空间?

[root@jiucool var]# du -h –max-depth=1 /usr/local/mysql/
37M     /usr/local/mysql/var
70M     /usr/local/mysql/mysql-test
15M     /usr/local/mysql/lib
448K    /usr/local/mysql/include
2.9M    /usr/local/mysql/share
7.6M    /usr/local/mysql/libexec
17M     /usr/local/mysql/bin
11M     /usr/local/mysql/docs
2.9M    /usr/local/mysql/sql-bench
163M    /usr/local/mysql/

好了,看一下,整个mysql 目录才占用163M大小!OK,没问题,既然mysql-bin.0000X日志文件占用这么大空间,存在的意义又不是特别大,那么我们就不让它生成吧.

[root@jiucool var]# find / -name my.cnf

找到了my.cnf 即mysql配置文件,我们将log-bin=mysql-bin 这条注释掉即可.

# Replication Master Server (default)
# binary logging is required for replication
#log-bin=mysql-bin

重启下mysql吧.

OK,至此,操作完成. 以后再不会因为就几十M的数据库大小生成N个G的日志文件啦.

这些个日志文件太恐怖了,我搬到这新VPS来才二十天左右,还不到一个月日志文件居然就近3个G大小,如果一两个月我不清除日志文件这还得了!

分享到:
评论

相关推荐

    mysql-connector-java-5.1.45-bin.jar

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,而`mysql-connector-java-5.1.45-bin.jar`是MySQL提供的一款Java数据库连接器,用于在Java应用程序中与MySQL数据库进行交互。这个驱动包允许Java开发者使用Java ...

    mysql-connector-java-5.1.40-bin.rar

    1. 下载:你需要从MySQL官方网站或者其他可信来源下载这个JAR文件。 2. 配置Classpath:将这个JAR文件添加到Java项目的类路径(classpath)中,这样Java运行时环境就能找到这个驱动程序。这可以通过IDE的配置、环境...

    flume-mysql.zip

    在Flume的配置文件中,我们需要定义一个Source(数据来源)、Channel(数据缓冲区)和Sink(数据目的地),并设置相应的参数。 以一个简单的Flume配置示例来说明数据同步过程: ```properties agent.sources = ...

    mysql-connector-java-8.0.30.jar

    免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...

    mysql-5.5.37.tar.gz

    MySQL是世界上最受欢迎的开源关系型数据库管理系统之一,其版本5.5.37是一个重要的发布,为用户提供了稳定性和性能的提升。这个压缩包“mysql-5.5.37.tar.gz”是专为Linux操作系统设计的,包含了安装和运行MySQL ...

    mysql-rpm.rar

    这可以通过执行`sudo /usr/bin/mysql_secure_installation`脚本来完成。 5. **启动MySQL服务**:使用`sudo systemctl start mysqld`命令启动MySQL服务。 6. **设置开机启动**:若希望MySQL在系统启动时自动启动,可...

    logstash-output-jdbc.zip

    Logstash 在这种环境中作为数据管道,能够实时或批量地从各种来源(例如日志文件、网络设备、应用程序)收集数据,然后通过过滤器进行清洗、转换,最后将处理后的数据发送到目标存储系统,如 Elasticsearch 进行搜索...

    mysql-connector-net-5.1.6-noinstall.zip_MYSQL_mysql .net_mysql t

    6. **bin**:这个目录通常包含可执行文件和库,可能包括.NET的MySQL连接器dll文件,开发者可以在项目中引用这些文件来连接到MySQL数据库。 7. **Docs**:文档目录,可能包含API参考、用户指南、示例代码等,帮助...

    MySQL利用binlog恢复库表

    mysqlbinlog --stop-datetime='2023-08-15 12:00:00' /var/lib/mysql/mysql-bin.000001 | mysql -u root -p ``` 这里的`--stop-datetime`参数用于指定停止导出的位置,即不包括该时间点之后的所有操作。 #### 五...

    mysql-5.7.16-win32的安装文件及安装过程

    首先,需要从可靠的来源下载MySQL 5.7.16-win32版本的安装文件。在本案例中,提供了百度网盘的下载链接:`http://pan.baidu.com/s/1bpgVlmv`。需要注意的是,为了确保软件的安全性,建议从官方网站或其他可信渠道...

    最新版linux logstash-8.1.1-linux-x86_64.tar.gz

    1. **输入插件(Input Plugins)**:这些插件负责从各种来源接收数据,例如系统日志、网络端口、文件系统等。例如,file input 插件可以从本地文件系统读取日志文件。 2. **过滤器插件(Filter Plugins)**:过滤器...

    elasticsearch-5.6.3+kibana-5.6.3+logstash-5.6.3.rar

    此外,压缩包中还包含了一个 "mysql-connector-java-5.1.36-bin.jar" 文件,这是MySQL数据库的Java驱动程序,表明可能支持从MySQL数据库导入数据到Logstash或Elasticsearch。用户可以在Logstash配置中引用这个JAR...

    webdgs-src.zip

    标题“webdgs-src.zip”表明这是一个包含源代码的压缩文件,主要针对Web应用程序开发。描述中的信息相同,没有提供额外细节,但我们可以根据标签“java”推断出这可能是一个基于Java的Web项目。 首先,`.classpath`...

    logstash-7.13.3.tar包,欢迎下载

    主要的可执行文件通常是 "bin/logstash",用于启动和管理Logstash实例。配置文件通常位于 "config" 目录下,用户可以根据需求自定义输入、过滤和输出插件的配置,来实现不同的数据处理逻辑。 Logstash 的工作流程由...

    MySQL安装卸载-Windows.docx

    1. **下载安装包**:访问MySQL官方网站或其他可信来源下载适用于Windows的安装包。 2. **启动安装向导**:双击下载好的安装文件启动安装向导。 3. **接受许可协议**:阅读并接受许可协议。 4. **选择安装类型**:...

    server-mariadb-10.10.1.tar.gz

    MariaDB的名字来源于MySQL创始人Monty Widenius的女儿Maria。随着时间的推移,MariaDB逐渐发展成为一个独立的数据库系统,具有自己的一套特性,如XtraDB存储引擎(基于InnoDB的增强版本)和Aria存储引擎(快速日志...

    amoeba-aladdin-0.5.zip_Amoeba for Aladdin_MYSQL_aladdin_amoeba

    标题中的"amoeba-aladdin-0.5.zip_Amoeba for Aladdin_MYSQL_aladdin_amoeba"揭示了这是一个关于Amoeba与Aladdin在MySQL集群环境中的整合应用。Amoeba是一个分布式数据库中间件,它能将一个单一的MySQL数据库实例...

    c3po-0.21.0.70所有资源包

    2. **c3p0-0.9.1.1.bin.zip**: 这是c3po 0.9.1.1的二进制发行版,通常包含了编译后的类文件和必要的配置文件。使用这个版本,开发者可以直接在项目中引入c3po而无需自行编译源代码。 3. **c3p0-0.9.1-pre12.src.zip...

    最新版linux logstash-8.5.3-linux-x86-64.tar.gz

    在Linux环境中,Logstash以其高效和灵活的配置,帮助用户从各种数据源收集数据,进行过滤、清洗,然后将处理后的数据发送到各种存储或分析系统,如Elasticsearch、Kafka、MySQL等。 在您提供的文件"最新版linux ...

    linux下mysql安装配置.docx

    MySQL是一个流行的开源关系型数据库管理系统,它提供了强大的数据存储和处理能力。以下是基于提供的内容详细阐述Linux下MySQL的安装配置步骤: 1. **下载MySQL安装文件** 在开始安装前,首先需要从MySQL官方网站...

Global site tag (gtag.js) - Google Analytics