广告位联系
返回顶部
分享到

mysql中general_log日志的实现介绍

Mysql 来源:互联网 作者:佚名 发布时间:2024-11-16 10:50:50 人浏览
摘要

1.记录范围:这个log里面会记录MySQL所有的SQL语句,不管是查询语句,还是DML语句,还是DDL语句,还是DCL语句,这些语句统统都会被记录在general log文件中。就连我们连接和断开MySQL数据库的这些

1.记录范围:这个log里面会记录MySQL所有的SQL语句,不管是查询语句,还是DML语句,还是DDL语句,还是DCL语句,这些语句统统都会被记录在general log文件中。就连我们连接和断开MySQL数据库的这些语句。
2.记录顺序:MySQL会把它收到的所有SQL语句按照接收的顺序依次记录在general log中。我们需要注意的是,这里接受的SQL语句的顺序,并不等于SQL语句就是按照这个接受的顺序来执行,因为有的时候,一些SQL可能需要等待其他锁被释放后才会被真正的执行,SQL语句的执行顺序是和binlog中的顺序是相匹配的。
3.影响:默认不开启。开启后日志将会非常大,对磁盘是一个很大的压力。对MySQL数据的性能有一定的影响。

操作命令(重启mysql失效)

1.查看日志是否开启: show variables like 'general_log';

2.开启日志功能: set global general_log=on;

3.关闭日志功能:set global general_log=off;

4.日志文件保存位置: show variables like 'general_log_file';

5.设置日志文件保存位置: set global general_log_file='/var/log/mysql/general_query_log';

6.看看日志输出类型 table或file: show variables like 'log_output';

7.设置输出类型为table(专用日志表中,要比记录到文件耗费更多的系统资源,写入到mysql.general_log 表,这个参数是和慢查询日志是共用的): set global log_output='table';

8.设置输出类型为file: set global log_output='file';

9.设置输出类型同时支持两种日志存储方式: set global log_output='file,table';

配置文件修改(重启生效)

1.开启日志功能: 修改需要在/etc/my.cnf的:general_log = 1(0表示关闭,等于1表示开启)
2.设置日志文件保存位置:修改需要在/etc/my.cnf的:general_log_file = /var/log/mysql/general_query_log/
3.设置输出类型为file(专用日志表中,要比记录到文件耗费更多的系统资源,写入到mysql.general_log 表,这个参数是和慢查询日志是共用的):修改需要在/etc/my.cnf的log_output = file
4.重启mysql:service mysqld restart

清理general log 文件

1.文件
(1)备份:cp general_query_log general_query_log.bak
(2)清理(切记不要直接删除这个日志文件,否则这个文件不会自动生成,误删后需要重启mysql): echo "" > general_query_log

2.表
(1)备份:create table mysql.general_log_bak as select * from mysql.general_log;
(2)清空:truncate table mysql.general_log;


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • MYSQL批量UPDATE的两种方式介绍
    工作中遇到批量更新的场景其实是比较常见的。 但是该如何正确的进行批量UPDATE,很多时候往往有点头大。 这里列2种可用的方式,供选择
  • mysql中general_log日志的实现介绍
    1.记录范围:这个log里面会记录MySQL所有的SQL语句,不管是查询语句,还是DML语句,还是DDL语句,还是DCL语句,这些语句统统都会被记录在
  • Mysql8.4.3LTS中离线部署的实现

    Mysql8.4.3LTS中离线部署的实现
    一、部署环境 软件:mysql8.4.3LTS 系统:ubuntu24.04 资源配置 资源分配的大小与业务系统的体量有关系;所以没有固定 CPU:2核 内存:4 GB 磁盘
  • Navicat连接MySQL出现2059错误的解决方案介绍
    Navicat连接MySQL出现2059错误 在Navicat中连接MySQL时遇到错误代码2059,这表示MySQL服务器不接受Navicat客户端提供的加密插件。 MySQL 8.0 及以上版本
  • mysql时间戳格式化yyyy-mm-dd的使用介绍

    mysql时间戳格式化yyyy-mm-dd的使用介绍
    格式化到 年月日 1 2 3 4 # 将时间换成列名就行;当前是秒级时间戳,如果是毫秒的 / 1000即可 # SELECT FROM_UNIXTIME(1602668106666.777888999 / 1000,%Y-%m
  • mysql-8.0.15-winx64安装与修改密码方式介绍

    mysql-8.0.15-winx64安装与修改密码方式介绍
    第一步:下载 移步官网:https://www.mysql.com/downloads/下载一个压缩包(个人版) 第二步:安装 解压安装包,根据自己的喜好选择路径 将安装
  • mysql中Innodb行锁实现原理介绍
    一、Innodb行锁的实现 【1】Innodb的行锁是通过给索引的索引项加锁来实现的 【2】Innodb按照辅助索引进行数据操作时,辅助索引和主键索引都将
  • windows-mysql8.0.15如何修改密码、重置密码

    windows-mysql8.0.15如何修改密码、重置密码
    windows-mysql8.0.15 修改密码、重置密码 打开命令窗口cmd 输入命令:net stop mysql,停止MySQL服务。 1 net stop mysql 如果出现下图提示,就则需要用管
  • Mysql主从同步怎么重置

    Mysql主从同步怎么重置
    服务器强制重启,导致MySQL主从数据库出现数据不一致问题,主从数据库数据相差较大,无法完成数据同步,出现报错。 因此,需要进行主
  • MySQL中关于表的约束介绍

    MySQL中关于表的约束介绍
    一、空属性 在MySQL中,空属性约束指定了某一列是否可以包含NULL值。 它们用于各种目的,例如数据验证和限制数据的输入格式。 NOT NULL:当
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计