如何启用MySQL/MariaDB查询日志记录
在使用数据库时,开发人员通常想知道幕后发生了什么,无论是出于故障排除、性能调优还是纯粹的好奇心。
常规查询日志仍然是MySQL/MariaDB数据库中最流行的审计和诊断信息源之一。启用日志记录后,当客户端连接或断开连接时,数据库服务器会将信息写入日志文件,并记录每条SQL语句。
但是,请记住,启用常规查询日志会影响MySQL/MariaDB的性能。这将使吞吐量减少约13%,并使MySQL/MariaDB服务器的响应时间增加约17%。
因此,事不宜迟,让我们开始吧,因为这个过程非常简单。
启用MySQL/MariaDB常规查询日志记录
在MySQL/MariaDB中,默认情况下禁用常规查询日志。
1.以root用户身份进入MySQL/MariaDB服务器命令行工具:
mysql-u根-p
2.将常规日志文件路径设置为
/var/logs/mysql/general-query.log
通过执行以下查询。
集合
全球的
general_log_file=
'/var/log/mysql/general-query.log'
;
代码语言:
PHP
(
php
)
常规查询日志写入包含数据库子目录的同一数据目录中(通常
/var/lib/mysql
),日志文件名默认为主机名。然而,正如您所看到的,这是可以改变的。
3.启用服务器常规日志:
集合
全球的
general_log=
1.
;
代码语言:
PHP
(
php
)
让我们再次检查MySQL/MariaDB常规查询日志状态:
显示变量,如
“general_log%”
;
代码语言:
JavaScript
(
javascript
)
就是这样。你可以做一些类似的事情
sudo尾部-f
上
general-query.log
文件,并密切关注事态发展。
相关:Linux中的Head和Tail命令示例说明
完成检查后,您可以禁用MySQL/MariaDB查询日志记录,如下所示:
集合
全球的
general_log=
0;
代码语言:
PHP
(
php
)
在生产服务器上打开日志记录当然是不可取的。所以要小心;日志文件可能会很快变大。
假设您不想直接运行查询。在这种情况下,您仍然可以通过直接修改MySQL/MariaDB配置文件来启用MySQL/MMariaDB查询日志记录,但请记住,这种方法需要重新启动数据库服务器。
结论
当您怀疑客户端有错误,并想知道客户端到底向数据库发送了什么时,一般的MySQL/MariaDB查询日志会很有帮助。
因此,如果您有数据库问题,解决问题的一种方法是启用查询日志记录并观察发生了什么。
您可以在这里和这里阅读更多关于启用通用MySQL/MariaDB查询日志的信息。
延伸阅读:
Windows 记事本终于获得自动更正和拼写检查功能
在首次引入 Windows 大约 41 年后,记事本终于更新了自动更正和拼写检查功能。这家科技巨头于今年 3 月推出了拼...
Ubuntu 的 apt 和 apt-get 命令有什么区别?
在Ubuntu及其他基于Debian的Linux发行版中,软件包管理是系统维护的一个重要方面。apt和apt-get是两...
Ubuntu远程桌面:如何设置和连接
远程桌面是一种允许您远程接管和使用另一台计算机的服务。在Ubuntu中,可以在图形客户端机器上启用它来控制主机。此功能对...
苹果公司在“放开”iPad活动上宣布的4款产品(以及你错过了什么)
利用当天的视频 苹果2024年5月的“放开”活动标志着iPad系列的一个重要里程碑,该公司推出了自成立以来最重大的升级。...
将照片从iPhone传输到iPhone的8种快速方法
已升级到新iPhone,是否要从旧设备中移动所有照片?或者你只是想从别人的iPhone上转移照片?以下是在两部iPhon...