MySQL开启日志

概 述

本文介绍如何设置MySQL从而实现查看对数据库执行的所有SQL语句。

实 现

一、临时设置
首先通过 mysql -u -p 连接MySQL,设置相关变量

set global general_log = on;
set global general_log_file = '/var/log/mysql/mysql.log';
  • general_log: 是否开启log,on开启,off关闭
  • general_log_file:log输出路径

注:log输出路径必须保证存在且MySQL有权限写入。

查看变量的值

show variables like "general_log";
show variables like "general_log_file";

此时已经生效了,临时设置不需要重启MySQL

二、全局设置
直接修改MySQL的配置文件,本人MySQL版本为5.7.31,配置文件路径为/etc/mysql/mysql.conf.d/mysqld.cnf。不同的版本可能路径略有不同。
将如下的两行取消注释并配置即可

#general_log_file        = /var/log/mysql/mysql.log
#general_log             = 1

当然,正如配置中注释写的:

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
# 

我们可以复制此文件到/etc/mysql/my.cnf作为全局配置,也可以复制到~/.my.cnf作为用户特定设置。
此方式需要重启MySQL

service mysql restart
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容