当前位置: 首页 > article >正文

MySQL 9从入门到性能优化-通用查询日志

【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客

《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com)

MySQL9数据库技术_夏天又到了的博客-CSDN博客

通用查询日志记录MySQL的所有用户操作,包括启动和关闭服务、执行查询和更新语句等。本节将介绍通用查询日志的启动、查看、删除等内容。

12.4.1  启动通用查询日志

MySQL服务器默认情况下并没有开启通用查询日志。通过SHOW VARIABLES LIKE '%general%';语句,可以查询当前通用查询日志的状态。

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+---------------------+
| Variable_name    | Value               |
+------------------+---------------------+
| general_log      | OFF                 |
| general_log_file | X0NHUNO7YDZVSSI.log |
+------------------+---------------------+
2 rows in set, 1 warning (0.11 sec)

从结果中可以看出,通用查询日志的状态为OFF,表示通用日志是关闭的。

开启通用日志的方法如下:

mysql> set @@global.general_log=1;
Query OK, 0 rows affected (0.04 sec)

再次查询通用日志的状态:

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+---------------------+
| Variable_name    | Value               |
+------------------+---------------------+
| general_log      | ON                  |
| general_log_file | X0NHUNO7YDZVSSI.log |
+------------------+---------------------+
2 rows in set, 1 warning (0.00 sec)

从结果中可以看出,通用查询日志的状态为ON,表示通用日志已经开启了。

如果想关闭通用查询日志,执行以下语句即可:

mysql> set @@global.general_log=0;

12.4.2  查看通用查询日志

通用查询日志中记录了用户的所有操作,通过查看通用查询日志,可以了解用户对MySQL进行的操作。通用查询日志是以文本文件的形式存储在文件系统中的,因此可以使用文本编辑器直接打开进行查看:Windows下可以使用记事本,Linux下可以使用vim、gedit等。

【例12.8】使用记事本查看MySQL通用查询日志。

使用记事本打开C:\ProgramData\MySQL\MySQL Server 9.0\Data\目录下的X0NHUNO7YDZVSSI.log,可以看到如下内容:

C:\Program Files\MySQL\MySQL Server 9.0\bin\mysqld.exe, Version: 9.0.1 (MySQL Community Server - GPL). started with:
TCP Port: 3306, Named Pipe: MySQL
Time                         Id Command      Argument
2024-07-18 17:24:32        1 Connect      root@localhost on 
    1 Query        select @@version_comment limit 1
2024-07-18 17:24:36        1 Query        SELECT DATABASE()
    1 Init DB        test
2024-07-18 17:24:53        1 Query         SELECT * FROM fruits
2024-07-18 17:24:55        1 Quit 

上面是笔者计算机上的通用查询日志的一部分,可以看到MySQL启动信息、用户root连接服务器与执行查询语句的记录。读者的文件内容可能与这里不同。

12.4.3  删除通用查询日志

通用查询日志会记录用户的所有操作,因此在用户查询、更新频繁的情况下,通用查询日志增长得很快。数据库管理员可以定期删除比较早的通用查询日志,以节省磁盘空间。

可以用直接删除日志文件的方式删除通用查询日志。要重新建立日志文件,可以使用mysqladmin -flush logs命令。

【例12.9】直接删除MySQL通用查询日志。

首先在数据目录中找到日志文件所在目录C:\ProgramData\MySQL\MySQL Server 9.0\Data\,删除后缀为“.log”的文件。

然后通过mysqladmin -flush logs命令建立新的日志文件:

C:\> mysqladmin –u root –p flush-logs

执行完该命令,可以看到C:\ProgramData\MySQL\MySQL Server 9.0\Data\目录中已经建立了新的日志文件。


http://www.kler.cn/a/370695.html

相关文章:

  • mysql 与Redis 数据强一致方案
  • 03JavaWeb——Ajax-Vue-Element(项目实战)
  • Java设计模式——单例模式(特性、各种实现、懒汉式、饿汉式、内部类实现、枚举方式、双重校验+锁)
  • Spring Boot 下的Swagger 3.0 与 Swagger 2.0 的详细对比
  • 01.02、判定是否互为字符重排
  • 优化 Vue项目中 app.js 文件过大,初始化加载过慢、带宽占用过大等问题
  • 大语言模型的Scaling Law【Power Low】
  • arcgis pro 3.3.1安装教程
  • lego-loam featureAssociation 源码注释(五)补充
  • QT中使用图表之QChart绘制曲线图
  • mybatis常见的标签有哪些?
  • Redis 持久化 总结
  • 面对复杂的软件需求:5大关键策略!
  • 无人机动态窗口路径规划算法!
  • C++ Qt面试题 | 精选25题
  • 字节回应实习生破坏AI模型训练
  • golang linux快速启动 一键重启脚本
  • 跟着小土堆学习pytorch(二)——TensorBoard和Transform
  • C语言——数组、指针、函数
  • 外媒软文宣发:海外发稿-英国金融时报FT-大舍传媒
  • 总结性标题:高效导入文本数据,探索 MySQL 与 Java 的最佳实践
  • 【矩阵理论常见符号说明】
  • echarts自适应浏览器缩放代码
  • Redis与MySQL双写一致性的缓存模式
  • LeetCode 热题 100 之链表2
  • 三款计算服务器配置→如何选择科学计算服务器?