加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql日志结构是如何的

发布时间:2023-08-14 13:27:13 所属栏目:MySql教程 来源:
导读:这篇文章主要讲解了“mysql日志结构是怎样的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql日志结构是怎样的”吧!一.Mysql错误日志

这篇文章主要讲解了“mysql日志结构是怎样的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql日志结构是怎样的”吧!

一.Mysql错误日志

/home/mysql3306/logs/mysql-error.log

如果数据库出现故障,error日志,是第一个需要查询的日志

删除错误日志

MySQL的日志文件(错误日志)

<5.5.7版本时,flush logs会将filename.err命名为filename.err_old

>5.5.7版本则只是会重建错误日志,也就是除非错误日志被删除了会 重建一个;

否则不会对线上错误日志有影响。

注意:删除错误日志后,不会自动重建。需要flush logs或者重启数 据库。

mysqladmin -u root -p flush-logs

或者

mysql>flush logs;

二.Mysql general日志

记录所有执行过的语句,但是开启后对于数据库服务器的压力影响比较严重.不太建议搭建日常开启该日志,在某些情况下,比如统计汇总SQL,审计可以考虑暂时性的开启general log,否则容易出现问题.

相关参数:

mysql> show variables like '%general%';

+------------------+--------------------------------------+

| Variable_name  | Value                |

+------------------+--------------------------------------+

| general_log   | OFF                 |

| general_log_file | /home/mysql3306/mysql3306/mysql5.log |

+------------------+--------------------------------------+

三.Mysql slow 日志

记录执行超过时间阈值的SQL语句,用来判定执行比较慢的sql

mysql> show variables like '%slow%';

+---------------------------+-------------------------------------+

| Variable_name      | Value               |

+---------------------------+-------------------------------------+

| log_slow_admin_statements | ON                 |

| log_slow_slave_statements | ON                 |

| slow_launch_time     | 2                 |

| slow_query_log      | ON                 |

| slow_query_log_file   | /home/mysql3306/logs/mysql-slow.log |

+---------------------------+-------------------------------------+

点击(此处)折叠或打开

set global slow_query_log='ON’;

Set global long_query_time=1

log_queries_not_using_indexes:记录没有用索引的查询

log_throttle_queries_not_using_indexes:#设定每分钟记录到日志的未使用索引的语句数目,超过这个数目后只记录语句数量和花费的总时间

min_examined_row_limit:要检查的行数大于等于N时 才记录为慢查询,前提是必须满足long_query_time和 log-queries-not-using-indexes约束。

log_slow_admin_statements:管理语句是否记录

log_slow_slave_statements:从库的语句执行是否记录

- mysqldumpslow工具

-s, 是表示按照何种方式排序,c、t、l、r分别是按照记录次数、时间、查询时间、返回 的记录数来排序,

ac、at、al、ar,表示相应的倒叙;

-t, 是top n的意思,即为返回前面多少条的数据;

-g, 后边可以写一个正则匹配模式,大小写不敏感的;

比如:

/path/mysqldumpslow -s r -t 10 /database/mysql/slow-log

得到返回记录集最多的10个查询。

/path/mysqldumpslow -s t -t 10 -g “left join” /database/mysql/slow-log

得到按照时间排序的前10条里面含有左连接的查询语句。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章