欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql配置开启binlog与慢查询日志功能

程序员文章站 2024-02-10 13:17:46
...

备注:mysql有以下几种日志(本文罗列了mysql相关的日志说明,请结合实际需要配置开启):

     错误日志: -log-err

     查询日志: -log (可选)

     慢查询日志: -log-slow-queries (可选)

     更新日志: -log-update

     二进制日志: -log-bin

在mysql的安装目录下,打开my.ini(win)、my.cnf(linux)在后面加上上面的参数,保存后重启mysql服务就行了。

1、补充操作说明

mysql> show variables like 'log_%';        --查看所有的log命令

mysql> show variables like 'log_bin';      --查看具体的log命令

2、实施步骤

1)、查看二进制日志、慢查询日志、错误日志、操作日志是否开启

mysql> show variables like '%log%';

2)、编辑my.ini 或 my.cnf配置文件,在[mysqld]下添加参数,开启二进制日志、慢查询日志、错误日志、操作日志(路径请以实际环境为准,下面以linux环境举例)

#log

binlog_format = row

expire_logs_days = 7

binlog_cache_size = 65536

log_bin_trust_function_creators = 1

log_bin = /usr/local/mysql/binlog/mysql-bin

long_query_time=1

slow_query_log_file = /usr/local/mysql/log/slowquery.log

log_error=/usr/local/mysql/log/error.log

log_timestamps = SYSTEM

general_log = on

general_log_file = /usr/local/mysql/log/general.log

3)、重启mysql服务

systemctl restart mysqld

4)、验证

查看二进制日志、慢查询日志、错误日志、操作日志是否开启

mysql> show variables like '%log%';

3、注意事项

当开启general_Log后,会记录所有操作,这样general_Log文件就会很大,需要定期清空此文件来释放磁盘空间

mysql> SET GLOBAL general_log = 0;

mysql> exit;

cat /dev/null > general_log.csv

4、在线开启慢查询日志

mysql> set global slow_query_log=1;

mysql> show variables like '%slow_query_log%';

mysql> set global long_query_time=1;

mysql> show variables like 'long_query_time';

mysql> set global slow_query_log_file='/usr/local/mysql/log/slowquery.log';

mysql> show variables like 'slow_query_log_file';

mysql> set global log_queries_not_using_indexes=1;

mysql> show variables like 'log_queries_not_using_indexes';
相关标签: MySQLDB mysql