| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> MySQL优化学习日记10——慢查询 -> 正文阅读 |
|
[大数据]MySQL优化学习日记10——慢查询 |
目录 一、SQL排序——慢查询日志mysql 提供的一种日志记录,用于记录 mysql 中响应实践超过阈值的 SQL 语句(long_query_time,默认 10 秒) 慢查询日志默认是关闭的,建议开发调优的时候打开,最终部署的时候关闭 二、开启慢查询日志1、检查是否开启了慢查询日志 show variables like '%slow_query_log%'; 2、临时开启 set global slow_query_log =1; ——在内存中开启 mysql 服务重启(service mysql restart)后就没有了 3、永久开启
三、慢查询阈值1、查询 ?show variables like '%long_query_time%'; ?默认是 10 秒 2、设置临时阈值 set global long_query_time = 5; 3、永久设置阈值 vi /etc/my.cnf [mysqld] long_query_time=3 4、测试阈值 select sleep(4); show global status like '%slow_queries%'; ——查询超过阈值的sql cat /var/lib/mysql/localhost-slow.log? ——查询日志文件 其中查询时间为 4.000697,查询语句为 select sleep(4); ?这个样子显示的不太好看的,所以可以对上面的显示效果进行优化 5、查询日志文件 (1) cat /var/lib/mysql/localhost-slow.log (2) mysqldumpslow mysqldumpslow --hlep s:排序方式 获取返回记录最多的 3 个 SQL mysqldumpslow -s r -t 3 /var/lib/mysql/localhost-slow.log 获取访问次数最多的 3 个 SQL? 按照时间排序,前 10 条包含 left join 查询语句的 SQL? 四、分析海量数据4.1?模拟海量数据使用存储过程(无return) / 存储函数(有return) 1、新建表
2、通过存储函数插入海量数据: 创建存储函数: randstring(6) -> 用于模拟员工名称
? 这里报错了,是因为存储过程/存储函数在创建时与之前的开启慢查询日志冲突了 临时解决:
永久解决: /etc/my.cnf [mysqld] log_bin_trust_function_creators=1 重新执行 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 12:03:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |