这些日志的配置可在mysqld.conf中获取,以下:mysql
c80k2@c80k2-Vostro-3667❯/etc/mysql/mysql.conf.d$ vim mysqld.cnf
1.error错误日志: 记录启动、运行或中止mysqld时出现的问题sql
# Error log - should be very few entries. # # log_error = /var/log/mysql/error.log
2.查询日志: 记录创建的客户端链接和执行的全部语句(包括错误的)。
log=d:/mysql_log.txt
3. binlog二进制日志: 记录全部更改数据的语句、还用于主从复制shell
# The following can be used as easy to replay backup logs or for replication. # note: if you are setting up a replication slave, see README.Debian about # other settings you may need to change. server-id = 1 log_bin = /var/log/mysql/mysql-bin.log expire_logs_days = 10 max_binlog_size = 100M #binlog_do_db = include_database_name #binlog_ignore_db = include_database_name
此项设置能够用来很容易地回滚备份日志以及用来数据库备份。注意: 若是你正在设置一个备份从库,参看README.Debian来查看其余你可能改变的设置。数据库
注:log-update 更新日志已经被 log-bin 取代了,若是定义了会致使服务不可启动vim
4.慢日志: 记录全部执行时间超过long_query_time秒的全部查询bash
# Here you can see queries with especially long duration #log_slow_queries = /var/log/mysql/mysql-slow.log #long_query_time = 2 #log-queries-not-using-indexes
这里你能够看到耗时特别长的语句,单位为秒。性能
5. 通用日志: 会将全部到达MySQL Server的SQL语句记录下来。通常不会开启开功能,由于log的量会很是庞大。但个别状况下可能会临时的开一下子general log以供排障使用。开启方法:this
a, 在mysqld.conf配置文件中进行配置,以下:spa
# Be aware that this log type is a performance killer. # As of 5.1 you can enable the log at runtime! #general_log_file = /var/log/mysql/mysql.log #general_log = 1
注意这里的注释部分: 请注意这个日志类型是性能杀手,从5.1版本开始你能够在mysql正在执行的过程当中开启这个日志,也就是说能够直接启动就应用,而不须要从新启动mysql,实现了热启动。日志
b, 经过mysql语句开启,以下:
mysql>set global general_log_file='/tmp/general.lg'; #设置路径 mysql>set global general_log=on; # 开启general log模式 mysql>set global general_log=off; # 关闭general log模式
# 设置general log保存路径
# 注意在Linux中,此日志路径只能设置到 /tmp 或 /var 文件夹下,设置其余路径出错
# 须要root用户才有访问此文件的权限
c, 将日志记录在表中
shell代码
mysql>set global log_output='table'
运行后, 能够在mysql数据库下查找 general_log表