# 图片回复
# 图片回复
看看
# 图片回复
# 图片回复
感谢分享
性别男,爱好女可还行
# 图片回复
# 图片回复
# 图片回复
哈喽的
可可爱爱
首页
网站统计
关于本站
在线留言
友链申请
高清壁纸
论坛
开往
虫洞
推荐
Linux命令
资源网
Search
1
京东呆瓜搭建青龙面板+xdd-plus机器人+nvjdc配置
3,663 阅读
2
Typecho Cuteen主题美化
3,327 阅读
3
傻妞机器人最新版安装教程
2,885 阅读
4
Joe 主题 6.xx 底部增强,显示标签及二维码分享
2,491 阅读
5
好久不见之网站底部样式
2,300 阅读
Linux
Shell
Mysql
Typecho
网络
其他
Redis
登录
Search
标签搜索
Linux
Typecho
美化
Nginx
Shell
综合架构
Mysql
Joe
源码
Web
数据备份
命令
Ansible
k8s
定时任务
视频
网易云
白嫖
网络
Rsync
小黑
累计撰写
156
篇文章
累计收到
890
条评论
博主
3月14日
在线
首页
栏目
Linux
Shell
Mysql
Typecho
网络
其他
Redis
页面
网站统计
关于本站
在线留言
友链申请
高清壁纸
推荐
Linux命令
资源网
开往
搜索到
1
篇与
慢日志
的结果
2021-08-20
MySQL开启慢查询日志
前言数据库日志记录了用户对数据库的各种操作及数据库发生的各种事件。能帮助数据库管理员追踪、分析问题。MySQL提供了错误日志、二进制日志、查询日志、慢查询日志。MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值(long_query_time,单位:秒)的SQL语句。默认情况下,MySQL不启动慢查询日志。本文简单介绍如何开启慢查询日志,如何用mysqldumpslow分析慢查询。参数说明:slow_query_log #慢查询开启状态,ON开启,OFF关闭 slow_query_log_file #慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录) long_query_time #查询超过多少秒才记录 默认10s ,查询命令 SHOW VARIABLES LIKE 'long_query_time'; log_queries_not_using_indexes = 1 #表明记录没有使用索引的 SQL 语句重点说明:开启慢日志版本要高,低版本无法支持,本次版本是: 5.7.34SELECT VERSION(); #查询版本号 或者 show variables like '%version%'配置开启慢查询编辑MySQL配置文件my.cnf在【mysqld】字段下加入:long_query_time=1 #表示记录查询超过1s的sql slow_launch_time=1 #表示如果建立线程花费了比这个值更长的时间,slow_launch_threads 计数器将增加 slow_query_log=ON #开启慢查询日志 slow_query_log_file=/var/lib/mysql/slow_queries.log #慢查询日志记录文件{message type="warning" content="注意:慢查询的日志记录文件对于mysql用户必须可写!!"/}mysql> show variables like 'slow_query%'; +---------------------+---------------------------------+ | Variable_name | Value | +---------------------+---------------------------------+ | slow_query_log | ON | | slow_query_log_file | /var/lib/mysql/slow_queries.log | +---------------------+---------------------------------+ 2 rows in set (0.00 sec) mysql> SHOW VARIABLES LIKE 'long_query_time'; +-----------------+----------+ | Variable_name | Value | +-----------------+----------+ | long_query_time | 1.000000 | +-----------------+----------+ 1 row in set (0.00 sec)测试mysql> select sleep(2); +----------+ | sleep(2) | +----------+ | 0 | +----------+ 1 row in set (2.02 sec)[root@cs ~]# cat /var/lib/mysql/slow_queries.log /usr/sbin/mysqld, Version: 5.7.34-log (MySQL Community Server (GPL)). started with: Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument # Time: 2021-08-20T10:01:18.841053Z # User@Host: root[root] @ localhost [] Id: 3 # Query_time: 2.023306 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0 SET timestamp=1629453678; select sleep(2);删除慢查询日志慢查询日志的删除方法与通用日志的删除方法是一样的。可以使用 mysqladmin 命令来删除。也可以使用手工方式来删除。mysqladmin 命令的语法如下:mysqladmin -uroot -p flush-logs执行该命令后,命令行会提示输入密码。输入正确密码后,将执行删除操作。新的慢查询日志会直接覆盖旧的查询日志,不需要再手动删除。数据库管理员也可以手工删除慢查询日志,删除之后需要重新启动 MySQL 服务。{message type="warning" content="注意:通用查询日志和慢查询日志都是使用这个命令,使用时一定要注意,一旦执行这个命令,通用查询日志和慢查询日志都只存在新的日志文件中。如果需要备份旧的慢查询日志文件,必须先将旧的日志改名,然后重启 MySQL 服务或执行 mysqladmin 命令。"/}
2021年08月20日
336 阅读
3 评论
1 点赞