MYSQL日志
Mysql提供了一下几组日志,用来帮助你找出mysqld 内部出现的原因
日志文件
|
计入日志文件中的内容
|
|
错误日志
|
记录启动、运行或停止mysqld时出现的问题。
|
|
查询日志
|
记录建立的客户端连接和执行的语句。
|
|
二进制日志
|
记录所有更改数据的语句。还用于复制。
|
|
慢查询日志
|
记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。
|
|
错误日志(err-log)
错误日志文件包含了当mysqld启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息。如果mysqld莫名其妙地死掉并且mysqld_safe需要重新启动它,mysqld_safe在错误日志中写入一条restarted mysqld消息。如果mysqld注意到需要自动检查或着修复一个表,则错误日志中写入一条消息。
可以用--log-error[=file_name]选项来指定mysqld保存错误日志文件的位置。如果没有给定file_name值,mysqld使用错误日志名host_name.err 并在数据目录中写入日志文件。如果你执行FLUSH LOGS,错误日志用-old重新命名后缀并且mysqld创建一个新的空日志文件。
通用查询日志(query-log)
如果你想要知道mysqld内部发生了什么,你应该用--log[=file_name]或-l [file_name]选项启动它。如果没有给定file_name的值, 默认名是host_name.log。所有连接和语句被记录到日志文件。当你怀疑在客户端发生了错误并想确切地知道该客户端发送给mysqld的语句时,该日志可能非常有用。
mysqld按照它接收的顺序记录语句到查询日志。这可能与执行的顺序不同。这与更新日志和二进制日志不同,它们在查询执行后,但是任何一个锁释放之前记录日志。(查询日志还包含所有语句,而二进制日志不包含只查询数据的语句)。
服务器重新启动和日志刷新不会产生新的一般查询日志文件(尽管刷新关闭并重新打开一般查询日志文件)。在Unix中,你可以通过下面的命令重新命名文件并创建一个新文件:
shell> mv hostname.log hostname-old.log
shell> mysqladmin flush-logs
shell> cp hostname-old.log to-backup-directory
shell> rm hostname-old.log
二进制日志(Bin-log)
这个不需要介绍了吧。它记录所有对数据操作语句。
官方的说法是:二进制日志包含了所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句。语句以“事件”的形式保存,它描述数据更改。
开启BIN-log对服务器的影响:运行服务器时若启用二进制日志则性能大约慢1%。但是,二进制日志的好处,即用于恢复并允许设置复制超过了这个小小的性能损失。
由此可见,二进制日志的主要作用是在恢复使能够最大可能地更新数据库,因为二进制日志包含备份后进行的所有更新。
二进制日志还用于在主复制服务器上记录所有将发送给从服务器的语句
慢查询日志(slow-queries -log)
慢查询日志记录所有执行时间超过long-query-time秒的SQL语句,但获得初始表锁定的时间不算做执行时间,这也就意味着慢查询日志里不能查出你的SQL语句是否造成了表锁定。
慢查询日志可以用来找到执行时间长的语句,对其进行优化。也就是说,在数据库应用层的优化需要使用到慢查询日志
分享到:
相关推荐
在这个“日志文件解析MySQL版”的资源包中,提供了JAVA源代码、可执行jar文件、日志文件样例以及MySQL建表脚本,这将帮助我们构建一个完整的日志分析系统,以下将详细介绍其中涉及的知识点。 首先,**JAVA日志解析*...
使用Kettle获取MySQL日志文件名称
删除通用查询日志可以直接删除日志文件,或者重新建立新的通用查询日志文件。 慢查询日志 慢查询日志记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。启动和设置慢查询日志可以通过配置文件...
### 精通MySQL日志管理 在数据库管理和维护工作中,了解并掌握MySQL的日志管理至关重要。这不仅能帮助我们及时发现并解决系统故障,还能通过对日志数据的分析来进行性能优化,确保系统的稳定运行。本文将详细介绍...
- **日志文件**:InnoDB的日志文件,如ib_logfile1、ib_logfile2,用于记录事务日志,支持事务的原子性、一致性、隔离性和持久性。 #### 二、MySQL数据库文件的存放位置 MySQL数据库文件的存放位置依赖于MySQL...
MySQL日志文件是数据库管理的重要组成部分,它们记录了MySQL服务器的各种操作,有助于故障排查、数据恢复和性能优化。本文将详细介绍MySQL的日志类型、配置方法以及如何查看和使用这些日志。 1. MySQL日志类型: -...
文件介绍.png`中,可能列出了MySQL数据库文件的一些常见类型及其作用: 1. ibdata1:这是InnoDB存储引擎的数据文件,包含InnoDB表的数据和索引。 2. *.frm:表结构文件,存储了表的定义信息。 3. *.ibd:InnoDB表的...
日志文件是数据库状态和行为的记录,对于诊断问题、监控性能以及安全审计等方面扮演着重要角色。本文将探讨五种常用的MySQL慢查询日志分析工具,并详细说明它们的使用方法和特点。 首先,了解MySQL慢查询日志的启用...
MySQL日志文件在数据库管理中扮演着至关重要的角色,它们记录了数据库的各种操作,帮助管理员监控、诊断问题以及实现数据恢复。以下是对MySQL日志类型的详细解释和使用方法: 1. **错误日志(The error log)**:这...
MySQL配置文件解析主要涉及到MySQL服务器的参数调整,这些参数直接影响数据库的性能和稳定性。配置文件通常命名为`my.cnf`或`my.ini`,在不同的操作系统路径可能不同。以下是几个关键参数的解释: 1. `port`:指定...
### MySQL日志分析详解 #### 一、引言 MySQL作为一种广泛使用的开源关系型数据库管理系统,在维护数据库稳定性与性能方面发挥着至关重要的作用。...希望本文能够帮助读者更好地理解和运用MySQL日志文件。
MySQL日志文件是数据库管理系统中不可或缺的一部分,它们记录了数据库操作的详细信息,对于故障排查、数据恢复和性能优化都至关重要。以下是对不同类型的MySQL日志文件的详细说明: 1. 错误日志(Error Log):错误...
MySQL日志是MySQL数据库中非常重要的一个组成部分,它们记录了数据库的各种活动,对于数据库的维护、故障排查以及性能优化都有着不可忽视的作用。在运维管理中,熟悉MySQL日志的配置和使用是非常关键的技能。本文将...
"mysql三种日志文件的介绍" MySQL数据库系统中有三种日志文件,即binlog、redo log和undo log。这三种日志文件是 MySQL 实现主从复制、持久化和回滚的关键。 一、binlog binlog是用于记录数据库表结构和表数据...
MySQL日志文件是数据库系统用来记录各种操作的重要组件,它对于数据库的监控、故障排查以及数据恢复至关重要。MySQL中的日志文件通常包含错误日志、查询日志、二进制日志等多种类型。 1. **错误日志**(Error Log)...
本文将详细介绍四种清理MySQL日志的方法,并提供具体的实施步骤和注意事项。 #### 方法一:使用 PURGE MASTER LOGS 命令 **语法**: ```sql PURGE {BINARY | MASTER} LOGS {TO 'log_name' | BEFORE datetime_expr}...
- 日志大小限制:适当调整日志文件大小,避免日志文件过大导致磁盘空间耗尽。 - 日志格式:选择合适的日志格式,如ROW、STATEMENT或MIXED,以平衡性能和恢复能力。 总结,理解并有效利用MySQL的日志系统对于...
【作品名称】:基于Python+MySQL+日志文件 实现的监控报表 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】: 使用场景 ...