Mysql中关于查询日志的配置详解

news2025/7/21 1:58:38

查询日志

MySQL中的查询日志保存在文本文件中,能够记录MySQL中的所有数据操作。


开启查询日志

MySQL默认情况下没有开启查询日志,如果需要开启查询日志,则需要在 my.cnf 文件或者 my.ini 文件的 [mysqld] 选项下进行配置。例如,配置开启 MySQL 的查询日志:


[mysqld]
general_log = 1
general_log_file = /data/mysql/log/general_log/general_statement.log
log_output = FILE

各种配置说明如下:

·general_log:表示是否开启查询日志。此项设置为 1 或者不带任何值,都可以开启查询日志;设置为0或者在 my.cnf 文件或 my.ini 文件中没有配置此项,则不会开启查询日志。

·general_log_file:查询日志的文件目录,笔者这里配置的是日志的完整路径。

·log_output:表示日志的存储方式,可以有 3 种取值,TABLE 表示将查询日志存储到数据表中;FILE 表示将查询日志保存到文件中;NONE表示不保存日志信息到数据表和文件中。

注意:开启查询日志时,如果没有显示指定 general_log_file 选项和 log_output 选项的值,则 MySQL 会将查询日志保存到 DATADIR 选项指定的目录下(也就是数据库中的数据目录),默认的文件名称为 host_name.log ,其中,host_name 为 MySQL 的主机名。

配置开启查询日志之前,首先查看 /data/mysql/log/general_log 目录下的文件信息。

[root@binghe150 ~]# 
[root@binghe150 ~]# ll /data/mysql/log/general_log/
total 0

当未配置 MySQL 的查询日志时,/data/mysql/log/general_log/ 目录下不存在任何文件。

开启查询日志配置完成后,需要重启MySQL服务才能生效。

[root@binghe150 ~]# service mysqld restart
Shutting down MySQL..... SUCCESS! 
Starting MySQL........ SUCCESS!

也可以在MySQL命令行中指定开启MySQL的查询日志。

mysql> SET GLOBAL general_log = 1;
Query OK, 0 rows affected (0.01 sec)
mysql> SET GLOBAL general_log_file = '/data/mysql/log/general_log/general_statement.log'; 
Query OK, 0 rows affected (0.00 sec)
mysql> SET GLOBAL log_output = 'file';
Query OK, 0 rows affected (0.00 sec)

此时,再次查看 /data/mysql/log/general_log/目录下的文件。

[root@binghe150 ~]# ll /data/mysql/log/general_log/
total 4
-rw-r----- 1 mysql mysql 547 Jan 17 11:39 general_statement.log

当开启查询日志配置完成后,MySQL会自动创建general_log_file选项指定的日志文件。

查看查询日志

如果log_output选项配置的是将查询日志保存到文件中,则日志文件的格式为纯文本格式,可以直接查看日志文件中的内容。


cat /data/mysql/log/general_log/general_statement.log

mysql查询日志记录
查询日志中记录了所有的SQL语句的信息。

删除查询日志

  1. 直接找到日志目录即可删除日志记录。
rm -rf /data/mysql/log/general_log/general_statement.log
  1. 刷新日志
  • 刷新前日志记录如下:
    在这里插入图片描述

  • 刷新查询日志

    • 可以在MySQL命令行中执行如下命令刷新日志。
    mysql> FLUSH LOGS;
    Query OK, 0 rows affected (0.02 sec)
    
    • 也可以在服务器命令行中执行如下命令刷新日志。
    [root@binghe150 ~]# mysqladmin -uroot -p flush-logs
    Enter password:
    

日志刷新成功,再次查看 /data/mysql/log/general_log 目录下的文件。

  • 执行刷新命令后日志记录如下:
    在这里插入图片描述

关闭查询日志

关闭查询日志就比较简单了,只需要在 my.cnf 文件或者 my.ini 文件的 [mysqld] 选项下,将 general_log 选项配置为 0 ,或者删除 general_log 选项。

[mysqld]
general_log = 0

配置完成后,重启 MySQL 才能生效。

也可以在 MySQL 命令行中执行如下命令关闭查询日志。

mysql> SET GLOBAL general_log = 0;
Query OK, 0 rows affected (0.00 sec)

当关闭查询日志后删除查询日志,再执行刷新日志的操作,MySQL 将不再重新创建查询日志文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/368646.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GoFrame工程目录设计介绍

GoFrame框架针对业务项目的目录设计,主体的思想来源于三层架构,但在具体实现中,对其进行了一定的改进和细化使其更符合工程实践和时代进步。 一.工程目录结构 GoFrame业务项目基本目录结构如下: 二.目录结构解释 对外接口 对…

浅谈智能电力运维管理系统在物业小区的应用分析

安科瑞 李亚俊 0引言 由于部分住宅小区存在电力设施纸质档案破损缺失、产权分界不清、查找故障点所在箱变(箱式变电站,下同)位置困难或小区出入口路径不明等情况,影响了抢修效率。为此,国网辽宁沈阳市沈北新区供电公…

IDEA Maven install Failed to execute goal org.apache.maven.plugins异常处理

目录一、异常错误二、原因三、解决方法修改pom.xml资源配置文件一、异常错误 由于服务器编译拦截了静态资源,导致出现异常,需要重新打包编译 打开IDEA带的Maven管理,双击clean清除由项目编译创建的target 再双击install安装jar包到本地仓库…

朴素贝叶斯笔记

贝叶斯公式在A 条件成立下,B的概率等于B的概率*在B条件成立下,A的概率/A的概率,推导假设一个学校中男生占总数的60%,女生占总数的40%。并且男生总是穿长裤,女生则一半穿长裤、一半穿裙子。1.正向概率。随机选取一个学生…

白盒测试方法的简单理解(通俗易懂)

白盒测试主要使用逻辑覆盖测试方法,包括语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖等。 假设逻辑判断流程图如下图所示,我们简单来说说每种白盒测试方法是如何来进行的。 一、语句覆盖 语句覆盖的定义是:程序中…

Openwrt中动态IPV6 防火墙的正确设置方法

环境:光猫桥接公网IPV6 问题:动态IPV6地址不知道怎么设置防火墙 解决办法:模糊匹配前缀,特定后缀 背景:将家中光猫桥接后,获得了公网的IPV6地址,可以从外部用IPV6访问家中的设备,但I…

vue-cli引入wangEditor、Element,封装可上传附件的富文本编辑器组件(附源代码直接应用,菜单可调整)

关于Element安装引入,请参考我的另一篇文章:vue-cli引入Element Plus(element-ui),修改主题变量,定义全局样式_shawxlee的博客-CSDN博客_chalk variables 1、安装wangeditor npm i wangeditor --savewangE…

日常编程中和日期相关的代码和bug

本文主要是Java中和日期时间相隔的几个常用代码函数代码,做了总结,希望在日常编码中,可以帮到大家。 1.计算闰年 记住一个短语,“四年一润,百年不闰,四百再润”,不管换啥语言,相信…

HyperGBM用Adversarial Validation解决数据漂移问题

本文作者:杨健,九章云极 DataCanvas 主任架构师 数据漂移问题近年在机器学习领域来越来越得到关注,成为机器学习模型在实际投产中面对的一个主要挑战。当数据的分布随着时间推移逐渐发生变化,需要预测的数据和用于训练的数据分布…

剑指 Offer 30. 包含min函数的栈

摘要 剑指 Offer 30. 包含min函数的栈 一、栈解析 package Stock;import java.util.Stack;/*** Classname JZ30min函数栈* Description TODO* Date 2023/2/24 18:59* Created by xjl*/ public class JZ30min函数栈 {/*** description 最小栈的含义是每次从栈中获取的数据都是…

AWS攻略——使用中转网关(Transit Gateway)连接不同区域(Region)VPC

文章目录Peering方案Transit Gateway方案环境准备创建Transit Gateway Peering Connection接受邀请修改中转网关路由修改被邀请方中转网关路由修改邀请方中转网关路由测试修改Public子网路由知识点参考资料区别于 《AWS攻略——使用中转网关(Transit Gateway)连接同区域(Region…

深入理解Spring Boot的自动配置

通过spring boot可以很方便的独立运行spring应用程序,因为spring boot内嵌了Tomcat、Jetty等servlet容器,切提供自动配置功能,无需进行XML配置即可自动运行应用程序。那么Spring boot启动过程中具体进行了哪些操作呢?下面是Spring…

Julia 数学函数

Julia 提供了一套高效、可移植的标准数学函数。 数值比较 下表列出了用于数值比较的函数: 函数测试是否满足如下性质isequal(x, y)x 与 y 值与类型是否完全相同isfinite(x)x 是否是有限大的数字isinf(x)x 是否是(正/负)无穷大isnan(x)x 是否…

项目重构,从零开始搭建一套新的后台管理系统

背景 应公司发展需求,我决定重构公司的后台管理系统,从提出需求建议到现在的实施,期间花了将近半个月的时间,决定把这些都记录下来。 之前的后台管理系统实在是为了实现功能而实现的,没有考虑到后期的扩展性&#xf…

SpringMVC常见面试题(2023最新)

目录前言1.简单介绍下你对springMVC的理解?2.说一说SpringMVC的重要组件及其作用3.SpringMVC的工作原理或流程4.SpringMVC的优点5.SpringMVC常用注解6.SpringMVC和struts2的区别7.怎么实现SpringMVC拦截器8.SpringMvc的控制器是不是单例模式?如果是,有什…

关基系统三月重保安全监测怎么做?ScanV提供纯干货!

三月重保当前,以政府、大型国企央企、能源、金融等重要行业和领域为代表的关键信息基础设施运营单位都将迎来“网络安全大考”。 对重要关基系统进行安全风险监测并收敛暴露面,响应监管要求进行安全加固,重保期间实时安全监测与数据汇报等具体…

js函数声明方式*2,对象声明方式*7,不同的调用

目录 一、两种函数声明方式 二、七种对象声明方式 一、两种函数声明方式 【1】命名函数 形如: function fu1(){ let firstName 111111111 let lastName 2222222 console.log(firstName ,lastName ) } function fu2(firstName,lastName ){ …

Linux 线程优先级

目录标题概述Linux进程调度的三种策略Linux 线程优先级对于实时任务对于普通任务top中的PR和NI其他说明代码示例设置为实时进程优先级测试代码概述 概述内容 常见的运用场景: 1:2;3; Linux进程调度的三种策略 SCHED_OTHER,分时调度策略&#…

【读论文】AttentionFGAN

【读论文】AttentionFGAN介绍网络架构提取红外图像目标信息的网络辨别器损失函数生成器损失函数辨别器损失函数总结参考论文: https://ieeexplore.ieee.org/document/9103116/如有侵权请联系博主介绍 好久没有读过使用GAN来实现图像融合的论文了,正好看…

【Java面试八股文宝典之基础篇】备战2023 查缺补漏 你越早准备 越早成功!!!——Day14

大家好,我是陶然同学,软件工程大三今年实习。认识我的朋友们知道,我是科班出身,学的还行,但是对面试掌握不够,所以我将用这100多天更新Java面试题🙃🙃。 不敢苟同,相信大…