`
cwqcwk1
  • 浏览: 89246 次
文章分类
社区版块
存档分类
最新评论

MySQL数据库日志的管理与维护

 
阅读更多

MySQL数据库主要有5种类型的日志,分别为慢查询日志(log-slow-queries),二进制日志(log-bin),错误日志(log-error),查询日志(log),更新日志(log-update)。在新的MySQL版本中,已取消了更新日志,可以用二进制日志来替代这个功能。文章侧重讲解慢查询日志和二进制日志。

慢查询日志(log-slow-queries)

MySQL慢查询,指的是查询消耗时间较多,或者没有使用索引的查询,MySQL可以同时记录这两种情况:

# 慢日志保存路径
log-slow-queries = slow.log

# 超过2秒的查询
long_query_time = 2

# 没有使用索引的查询
log-queries-not-using-indexes


二进制日志(log-bin)

MySQL中,如果启用二进制日志记录,则MySQL的变更修改都会被记录到日志文件中:

mysql> show variables like 'log_bin';  
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | ON    |
+---------------+-------+
1 row in set

如果想关闭bin日志的记录,可以修改配置文件my.ini,把里面的log-bin这一行注释掉,重启mysql服务

查看的数据库的bin日志:

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |    946525 |
+------------------+-----------+
1 row in set

如果没有主从复制,可以通过以下方式,重置数据库日志,清除之前的日志文件:

mysql> reset master;
Query OK, 0 rows affected 

但是如果存在复制关系,应当通过PURGE的方式来清理bin日志:
语法如下:

PURGE MASTER LOGS TO 'log_name';
PURGE MASTER LOGS BEFORE 'date';

用于删除列于在指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件中的清单中被删除。

例如:

PURGE MASTER LOGS TO 'mysql-bin.010';
PURGE MASTER LOGS BEFORE '2008-06-23 15:00:00';

清除3天前的 binlog

PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);
BEFORE变量的date自变量可以为’YYYY-MM-DD hh:mm:ss’格式。

如果有主从复制,则注意以下几个问题:

1、从服务器是活动的,并且刚好在读取你正在试图删除的日志之一,那么执行这个命令不会起作用,而是触发一个错误。

2、从服务器是停止的,你碰巧清理了其想要读取的日志之一,则从服务器启动后不能复制。

3、从服务器是活动的,没有读取你试图删除的日志,那个这个命令是安全的,而且执行这个命令时从服务器不需要停止工作。

要清理日志,需按照以下步骤:

1. 在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
2. 使用SHOW MASTER LOGS获得主服务器上的一系列日志。
3. 在所有的从属服务器中判定最早的日志。这个是目标日志。如果所有的从属服务器是更新的,这是清单上的最后一个日志。
4. 备份你将要删除的所有日志。(这个步骤是自选的,但是建议采用。)
5. 清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步


参考:

http://blog.csdn.net/mycwq/article/details/17209169
http://ourmysql.com/archives/959
http://dev.mysql.com/doc/refman/5.0/en/binary-log.html

分享到:
评论

相关推荐

    MySQL数据库日志管理.ppt

    MySQL数据库日志管理 MySQL数据库日志管理是数据库管理员必须掌握的重要技能。该章节将详细介绍MySQL数据库日志管理的相关知识点。 日志简介 MySQL日志主要分为四类:错误日志、查询日志、二进制日志和慢查询日志...

    Oracle与MySQL在数据库日志管理的深度对比分析

    数据库日志管理是数据库系统维护数据完整性、实现灾难恢复和保证事务ACID属性的关键技术。Oracle和MySQL作为两个主流的数据库管理系统,在日志管理上有着不同的实现机制和特点。本文将深入探讨Oracle和MySQL在数据库...

    MySQL数据库:数据库日志管理.pptx

    在MySQL数据库中,日志管理是数据库管理和维护的重要组成部分。 首先,我们需要理解数据库日志的作用。数据库日志的主要功能包括: 1. **故障恢复**:当数据库发生故障时,通过日志可以追踪并恢复到故障发生前的...

    log4net保存日志到MySql数据库

    MySQL数据库日志存储 MySQL是一种高性能、可扩展的数据库,适用于各种规模的应用。使用MySQL存储日志,可以方便地进行日志查询、分析和备份。通过log4net,我们可以将应用程序的日志信息记录到MySQL的特定表中,...

    深入浅出 MySQL 数据库开发优化与管理维护

    《深入浅出 MySQL 数据库开发优化与管理维护》是一本专为MySQL爱好者和专业人士准备的指南,旨在帮助读者深入理解MySQL的各个方面,并提供实用的优化和管理策略。MySQL作为世界上最受欢迎的关系型数据库管理系统之一...

    mysql实验训练4-数据库系统维护.docx

    MySQL 数据库系统维护是指数据库管理员对数据库的日常维护和管理,包括用户管理、权限管理、数据库备份与恢复、数据导入导出等操作。以下是相关知识点: 一、数据库安全性 * 用户管理:创建用户、修改用户密码、...

    MySQL数据库运维.pdf

    总之,这门课程涵盖了MySQL数据库运维的各个方面,从基础的系统规划和安装,到复杂的性能优化和安全控制,再到关键的备份与恢复策略,旨在培养出具备全面MySQL运维能力的专业人士。通过深入学习,学员将能够应对各种...

    国家开放大学 数据库运维 形考一 MySQL数据库服务器配置

    MySQL数据库服务器配置 MySQL数据库服务器配置是国家开放大学数据库运维 形考一的重要组成部分。通过这个实验,我们将掌握 MySQL 的安装方法,了解 MySQL 服务器的组成,掌握 MySQL 服务器的配置方法。 MySQL安装...

    mysql.rar_MYSQL数据库开发、管理和维护。_mysql学习资料

    本压缩包"mysql.rar"包含了关于MYSQL数据库开发、管理和维护的学习资料,特别适合初学者和进阶者进行深入学习。 一、MySQL数据库开发 MySQL数据库开发涉及创建、修改和查询数据表,以及设计符合业务需求的数据模型...

    MySQL数据库巡检手册 MySQL DBA必备

    MySQL数据库巡检手册是MySQL数据库管理员(DBA)在进行数据库管理和维护工作中非常重要的参考资料。巡检手册包含了数据库性能、安全、运行状况等方面的检查项,以确保数据库能够正常稳定运行,及时发现并解决潜在问题...

    数据库运维 形考任务1 实验1 MySQL数据库服务器配置.pdf

    MySQL数据库服务器配置是数据库运维中的基础工作,本实验涵盖了MySQL的安装、配置、启动与关闭、日志管理、数据库与表的创建以及存储引擎的使用等多个关键知识点。 1. **MySQL安装**:实验要求下载并安装MySQL,这...

    MySQL数据库目录查询

    了解 MySQL 数据库的目录结构对于数据库的管理、维护和优化非常重要。在本文中,我们将详细介绍如何查询 MySQL 数据库的目录信息。 查询日志目录 要查询 MySQL 数据库的日志目录,可以使用以下命令: ```sql show ...

    云数据库MySQL认证

    而云数据库MySQL认证是由腾讯云(tenxunyun)与腾讯产业互联网学堂共同推出的,旨在验证个人在公有云环境中对MySQL数据库的管理与运维技能的专业认证。这个认证对于那些希望在云计算领域深化MySQL应用的人来说,是一...

    处理数据库日志过大问题

    数据库日志过大问题是一个常见的数据库管理挑战,尤其在高并发、大数据量的系统中更为显著。日志文件的迅速膨胀可能会占用大量磁盘空间,影响系统性能,甚至导致数据库服务中断。以下是一些关于如何处理数据库日志过...

    全国计算机等级考试二级MySQL数据库程序设计大纲(2018版)

    全国计算机等级考试二级MySQL数据库程序设计大纲(2018版)涵盖了对数据库基础、MySQL数据库操作、编程、管理与维护以及应用开发方面的全面要求,目的是检验应试者的数据库知识和技能。以下是该大纲中包含的知识点...

    MySQL数据库文件存放位置

    总的来说,MySQL数据库文件的存放位置是系统管理和维护中的基础知识点。熟悉这些路径和文件类型,能够帮助IT专业人士更好地管理和优化他们的MySQL环境。在日常工作中,应定期检查这些文件的状态,确保数据库的稳定...

    MYSQL数据库修复大师

    总的来说,MySQL数据库修复大师是数据库管理员的得力助手,能够在数据库遭遇危机时提供有效的解决方案,帮助恢复宝贵的数据。然而,预防总是优于治疗,因此,维护良好的数据库管理和备份习惯仍然是保护数据安全的...

    银河麒麟V10 MySQL数据库安装包

    MySQL数据库作为一款广泛使用的开源关系型数据库管理系统(RDBMS),在银河麒麟V10上的安装和使用对于开发和部署国产化信息系统至关重要。本安装包提供了MySQL 8.0.34版本,这是一个稳定且功能丰富的版本,适用于多...

    mysql数据库武洪萍版第五章习题与答案.docx

    MySQL 数据库武洪萍版第五章习题与答案 本资源摘要信息主要是基于 MySQL 数据库武洪萍版第五章习题与答案,涵盖了数据库索引、视图、触发器、存储过程和函数等多个方面的知识点。 1. 数据库索引:索引是数据库中...

    MySQL 5.1 版数据库

    MySQL 5.1是MySQL数据库管理系统的一个重要版本,它在2005年发布,以其稳定性和高效性受到广泛欢迎。MySQL是一个开源的关系型数据库管理系统(RDBMS),由瑞典的MySQL AB公司开发,后来被Sun Microsystems收购,最终...

Global site tag (gtag.js) - Google Analytics