医院网站建设管理规范,列举免费域名注册的网站,壹六八信息科技网站建设,网站域名备案系统查询日志
MySQL中的查询日志保存在文本文件中#xff0c;能够记录MySQL中的所有数据操作。 开启查询日志
MySQL默认情况下没有开启查询日志#xff0c;如果需要开启查询日志#xff0c;则需要在 my.cnf 文件或者 my.ini 文件的 [mysqld] 选项下进行配置。例如#xff0c;…查询日志
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 目录下的文件信息。
[rootbinghe150 ~]#
[rootbinghe150 ~]# ll /data/mysql/log/general_log/
total 0当未配置 MySQL 的查询日志时/data/mysql/log/general_log/ 目录下不存在任何文件。
开启查询日志配置完成后需要重启MySQL服务才能生效。
[rootbinghe150 ~]# 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/目录下的文件。
[rootbinghe150 ~]# 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查询日志中记录了所有的SQL语句的信息。
删除查询日志
直接找到日志目录即可删除日志记录。
rm -rf /data/mysql/log/general_log/general_statement.log刷新日志 刷新前日志记录如下 刷新查询日志 可以在MySQL命令行中执行如下命令刷新日志。 mysql FLUSH LOGS;
Query OK, 0 rows affected (0.02 sec)也可以在服务器命令行中执行如下命令刷新日志。 [rootbinghe150 ~]# 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 将不再重新创建查询日志文件。