MySQL日志参数配置简介

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 一、全日志配置 记录所有的操作信息和登录信息;只有在全日志功能打开的时候才会记录,否则不做任何记录。 1、参数相关设置 general_log=ON |OFF (开启或关闭,也可以用0或1) grneral_log_file=/data/mysql/JSH-01.

一、全日志配置

记录所有的操作信息和登录信息;
只有在全日志功能打开的时候才会记录,否则不做任何记录。

1、参数相关设置

general_log=ON |OFF (开启或关闭,也可以用0或1)

grneral_log_file=/data/mysql/JSH-01.log(日志路径及名字)

2、参数可调整范围

general_log gengeral_log_file 均可以动态调整

3、示例

mysql> select @@general_log;
+---------------+
| @@general_log |        默认全日志为关闭
+---------------+
|             0 |
+---------------+
1 row in set (0.00 sec)

mysql> set global general_log=1;   设置全局变量,开启全日志
Query OK, 0 rows affected (0.00 sec)

mysql> select @@general_log;
+---------------+
| @@general_log |
+---------------+
|             1 |
+---------------+
1 row in set (0.00 sec)

mysql> select @@general_log_file;
+------------------------+
| @@general_log_file     |
+------------------------+
| /data/mysql/JSH-01.log |
+------------------------+
1 row in set (0.00 sec)

mysql> ^DBye
[root@JSH-01 mysql]# tail -3 /data/mysql/JSH-01.log   查看记录内容
181128 20:52:10        1 Query    select @@general_log
181128 20:52:21        1 Query    select @@general_log_file
181128 20:52:26        1 Quit    

……

mysql> set global general_log_file="/data/mysql/new_JSH-01.log";
Query OK, 0 rows affected (0.00 sec)   设置路径及日志名字

mysql> select @@general_log_file;
+----------------------------+
| @@general_log_file         |
+----------------------------+
| /data/mysql/new_JSH-01.log |
+----------------------------+
1 row in set (0.00 sec)

二、慢查询日志配置

记录所有大于long_query_time定义的值的查询信息;
只有在慢查询日志功能打开的时候才会记录,否则不做任何记录。

1、参数相关设置

slow_query_log=ON |OFF(开启或关闭,也可以用0或1)

long_query_time=2 (定义超过多长时间的为慢sql)

slow_query_log_file=/data/mysql/JSH-01-slow.log(日志路径及名字)

2、参数可调整范围

三个参数均可以动态调整

3、示例

mysql> select @@slow_query_log;
+------------------+
| @@slow_query_log |
+------------------+
|                0 |
+------------------+
1 row in set (0.00 sec)

mysql> set global slow_query_log=1;
Query OK, 0 rows affected (0.01 sec)

mysql> select @@long_query_time;    定义超过10秒为慢日志
+-------------------+
| @@long_query_time |
+-------------------+
|         10.000000 |
+-------------------+
1 row in set (0.00 sec)

mysql> select @@slow_query_log_file;
+-----------------------------+
| @@slow_query_log_file       |
+-----------------------------+
| /data/mysql/JSH-01-slow.log |
+-----------------------------+
1 row in set (0.00 sec)

mysql> select slee(3);
ERROR 1305 (42000): FUNCTION slee does not exist
mysql> select sleep(3);    执行3秒
+----------+
| sleep(3) |
+----------+
|        0 |
+----------+
1 row in set (3.00 sec)

mysql> select sleep(11);    执行11秒
+-----------+
| sleep(11) |
+-----------+
|         0 |
+-----------+
1 row in set (11.01 sec)

mysql> ^DBye

[root@JSH-01 mysql]# tail -f /data/mysql/JSH-01-slow.log 查看慢日志
/usr/local/mysql/bin/mysqld, Version: 5.6.36 (MySQL Community Server (GPL)). started with:
Tcp port: 3306  Unix socket: /tmp/mysql.sock
Time                 Id Command    Argument
# Time: 181128 21:54:23          *开始执行时间
# User@Host: root[root] @ localhost []  Id:     4       *执行的用户
# Query_time: 11.000287   *执行时长*   Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0 
SET timestamp=1543413263;      *时间戳
select sleep(11);          *执行的内容

三、错误日志配置

记录MySQL启动和关闭的一些信息

1、参数相关设置

log_error=

2、参数可调整范围(只读参数,不支持动态调整)

只能在配置参数中修改,且修改完成需要重启MySQL。

mysql> select @@log_error;
+------------------------+
| @@log_error            |
+------------------------+
| /data/mysql/JSH-01.err |
+------------------------+
1 row in set (0.00 sec)

mysql> set global log_error="/data/mysql/new_JSH-01.err";
ERROR 1238 (HY000): Variable 'log_error' is a read only variable

3、修改配置参数时,如果使用mysql.server 和 mysqld_safe脚本启动

需要将log_error路径参数配置在 my.cnf 的 [mysqld_safe]域中。

四、MySQL错误日志详解

错误日志的内容分为三种类型:note正常工作日志;waring警告日志;error 错误日志,即重要异常日志,此时系统一般遇上严重错误。

在如下三种状态下,会产生日志信息:启动日志、关闭日志、报错信息。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
14天前
|
SQL 存储 关系型数据库
Mysql并发控制和日志
通过深入理解和应用 MySQL 的并发控制和日志管理技术,您可以显著提升数据库系统的效率和稳定性。
66 10
|
13天前
|
存储 Oracle 关系型数据库
索引在手,查询无忧:MySQL索引简介
MySQL 是一款广泛使用的关系型数据库管理系统,在2024年5月的DB-Engines排名中得分1084,仅次于Oracle。本文介绍MySQL索引的工作原理和类型,包括B+Tree、Hash、Full-text索引,以及主键、唯一、普通索引等,帮助开发者优化查询性能。索引类似于图书馆的分类系统,能快速定位数据行,极大提高检索效率。
48 8
|
10天前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
37 3
|
27天前
|
SQL 存储 缓存
MySQL进阶突击系列(02)一条更新SQL执行过程 | 讲透undoLog、redoLog、binLog日志三宝
本文详细介绍了MySQL中update SQL执行过程涉及的undoLog、redoLog和binLog三种日志的作用及其工作原理,包括它们如何确保数据的一致性和完整性,以及在事务提交过程中各自的角色。同时,文章还探讨了这些日志在故障恢复中的重要性,强调了合理配置相关参数对于提高系统稳定性的必要性。
|
30天前
|
SQL 存储 关系型数据库
MySQL进阶突击系列(01)一条简单SQL搞懂MySQL架构原理 | 含实用命令参数集
本文从MySQL的架构原理出发,详细介绍其SQL查询的全过程,涵盖客户端发起SQL查询、服务端SQL接口、解析器、优化器、存储引擎及日志数据等内容。同时提供了MySQL常用的管理命令参数集,帮助读者深入了解MySQL的技术细节和优化方法。
|
2月前
|
关系型数据库 MySQL 数据库
【赵渝强老师】MySQL的参数文件
MySQL启动时会读取配置文件my.cnf来确定数据库文件位置及初始化参数。该文件分为Server和Client两部分,包含动态与静态参数。动态参数可在运行中通过命令修改,而静态参数需修改my.cnf并重启服务生效。文中还提供了相关代码示例和视频教程。
|
2月前
|
SQL 关系型数据库 MySQL
【赵渝强老师】MySQL的全量日志文件
MySQL全量日志记录所有操作的SQL语句,默认禁用。启用后,可通过`show variables like %general_log%检查状态,使用`set global general_log=ON`临时开启,执行查询并查看日志文件以追踪SQL执行详情。
|
2月前
|
关系型数据库 MySQL 数据库
【赵渝强老师】MySQL的binlog日志文件
MySQL的binlog日志记录了所有对数据库的更改操作(不包括SELECT和SHOW),主要用于主从复制和数据恢复。binlog有三种模式,可通过设置binlog_format参数选择。示例展示了如何启用binlog、设置格式、查看日志文件及记录的信息。
159 6
|
2月前
|
SQL 关系型数据库 MySQL
【赵渝强老师】MySQL的慢查询日志
MySQL的慢查询日志用于记录执行时间超过设定阈值的SQL语句,帮助数据库管理员识别并优化性能问题。通过`mysqldumpslow`工具可查看日志。本文介绍了如何检查、启用及配置慢查询日志,并通过实例演示了慢查询的记录与分析过程。
174 3
|
2月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
408 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板