【MySQL】—-MySQL日志管理

  • Post author:
  • Post category:mysql





MySQL日志管理






MySQL


日志类型





a


错误日志(Error Log





日志文件名称

:用


–log-error[=file_name]


选项来指定


mysql


保存错误日志文件的位置,如果没有指定


file_name


,mysql使用默认的错误日志名


host_name.err












日志文件路径

:默认情况下,日志文件都保存在mysql的数据目录中。如果执行FLUSH LOGS,错误日志用-old重新命名后缀,并且mysql创建一个新的空日志文件。(如果未给出-log-error选项,则不会重新命名)。





日志其他说明

:如果不指定–log-error,或者(Windows)使用–console选项,错误被写入标准错误输出stderr。通常标准输出为终端。






b


查询日志(Query Log





日志文件名称




(老版本方法)





–log=[file_name]





-l[file_name]


选项进行启用。如果未指定


file_name


,默认名称为


host_name.log






/etc/my.cnf





[mysqld]


下面添加


log=/var/lib/mysql/Dragonwake.log


重启后





#servicemysql restart








查看错误日志:





正确的配置方法

,在


/etc/my.cnf





[mysqld]


下面添加下如内容





#


查询日志





general_log=ON





general_log_file=/var/lib/mysql/Dragonwake.log



重启


mysql





生成的查询日志文件


Dragonwake.log








查询日志内容:





#tail -f /var/lib/mysql/Dragonwake.log











c


慢查询日志(Slow Query Log





日志配置:




–log-slow-queries[=file_name]


选项启动时,


mysql


写一个包含了所有执行超过了


long_query_time


秒的


SQL


语句的日志。如果未指定


file_name


,默认为


host_name-slow.err





如果给出了文件名,但不是绝对路径,文件则写入默认的数据目录。






/etc/my.cnf





[mysqld]


下面添加





#


执行超过1

秒的sql会被log下来





long_query_time=1





#


将查询执行时间较慢的语句进行记录





log-slow-queries=/var/lib/mysql/Dragonwake-slow.log



重启


mysql


服务后,出现如下错误,





正确日志配置

:mysql5.6


版本以上,取消了参数


log-slow-queries


,更改为


slow-query-log-file





同时必须设置


slow_query_log=on





#


慢查询日志





#


执行超过1

秒的sql会被log下来





long_query_time=1





#


开启慢查询





slow_query_log=on





#


慢查询日志路径





slow-query-log-file=/var/lib/mysql/Dragonwake-slow.log



重启


MySQL





输出慢查询日志


Dragonwake-slow.log








慢查询日志内容






d


更新日志(Update Log





日志配置

:用–log-update[=file_name]选项(不建议使用)






/etc/my.cnf





[mysqld]


下面添加,





#


更新查询





log-update=/var/lib/mysql/Dragonwake-update.log



出现如下错误:





暂未找到解决办法





e


二进制日志(Binary Log & Binary Log Index





日志设置

:用


–log-bin[=file_name]


选项






/etc/my.cnf





[mysqld]


下面添加,





#


二进制查询





log-bin=/var/lib/mysql/Dragonwake-bin.log



重启


MySQL





输出二进制日志




查看二进制日志内容





#tail -f /var/lib/mysql/Dragonwake-bin.000001











f


)mysql

日志查询





mysql> show variables like’log_%’;







h


)mysql

当前日志





mysql> show master status;











i


)mysql

二进制日志数目





mysql> show master logs;









版权声明:本文为u012377333原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。