Mysql 性能分析(慢日志、profiling、explain)、读写分离(主从架构)、分库分表(垂直分库、垂直分表、水平分表)

查看系统性能参数

一条sql查询语句在执行前,需要确定查询执行计划,如果存在多种执行计划的话,mysql会计算每个执行计划所需要的成本,从中选择
成本最小的一个作为最终执行的执行计划
想要查看某条sql语句的查询成本,可以在执行完这条sql语句之后,通过查看当前会话中的 last_query_cost 变量 来得到当前查询的成本
这个查询成本对应 SQL 语句所需要读取的页的数量

在这里插入图片描述
在这里插入图片描述

查看系统性能参数

show [global | session] status like ‘参数’;
常用参数:
Connections:连接mysql服务器的次数,只有请求一次就算,不管是否连接成功
uptime:mysql 服务器的上线的时间 单位 s
slow_queries: 慢查询的次数
innodb_rows_read:select 查询返回的行数
innodb_rows_inserted: 执行insert 操作插入的行数
innodb_rows_updated:执行update操作更新的行数
innodb_rows_delete:执行delete操作删除的行数
Com_select:查询操作的次数
Com_update:更新操作的次数
Com_delete: 删除操作的次数
在这里插入图片描述

定位执行慢的SQL: 慢查询日志

mysql 慢查询日志,用来记录在mysql中 响应时间超过阀值的语句,具体指运行的时间超过 long_query_time 值的sql,
则会被记录到慢查询日志中。 long_query_time 默认值 10(单位s),意思大于10s,的语句,就会记录了。
慢查询日志收集了 执行效率较低的sql,在结合 explain 进行全面分析。
默认情况下,mysql数据库没有开启慢查询日志,因为开启慢查询日志或多或少带来一定的性能影响
慢查询日志支持将日志记录写入文件
在这里插入图片描述
在这里插入图片描述
持久性方式 my.ini my.cnf \临时性方式
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


开启慢查询
set global slow_query_log=off;

关闭慢查询日志

方式1:永久性方式

修改my.ini 或者 my.ini 文件 把 slow_query_log=OFF, 保存,重新服务即可生效
在这里插入图片描述
在这里插入图片描述

linux 中 用 mysqldumpslow知道查看慢日志文件

profiling, 命令将被弃用,可以从information_schema中profiling数据表进行查询

查看profing 状态,开启profing
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
show profile 常用查询参数
all:显示所有的开销信息 show profile all for query xx;
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

删除慢查询日志

linux
rm xxxxx
使用 mysqladmin flush-logs 来重新生成查询日志文件。
mysqladmin -uroot -p flush-logs slow
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/94613.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索在云原生环境中构建的大数据驱动的智能应用程序的成功案例,并分析它们的关键要素。

文章目录 1. Netflix - 个性化推荐引擎2. Uber - 实时数据分析和决策支持3. Airbnb - 价格预测和优化5. Google - 自然语言处理和搜索优化 🎈个人主页:程序员 小侯 🎐CSDN新晋作者 🎉欢迎 👍点赞✍评论⭐收藏 ✨收录专…

【leetcode 力扣刷题】数学题之数的开根号:二分查找

用二分查找牛顿迭代解决开根号 69. x的平方根367. 有效的完全平方数 69. x的平方根 题目链接:69. x的平方根 题目内容: 题意是要我们求一个数的算数平方根,但是不能使用内置函数,那么我们就暴力枚举。我们知道如果y>2的话&am…

HTML5+CSS3+JS小实例:科技感满满的鼠标移动推开粒子特效

实例:科技感满满的鼠标移动推开粒子特效 技术栈:HTML+CSS+JS 效果: 源码: 【html】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport&qu…

spring boot + Consul 示例 (Kotlin版)

文章目录 1.docker 安装consul2.创建基于springboot的client2.1 依赖版本2.2 pom.xml2.3 启动类2.4 application.properties 3 搭建完成4. 总结 1.docker 安装consul docker-compose.yaml version: "3"services:consul:image: consul:1.4.4container_name: consule…

卡特兰数

title: 卡特兰数 date: 2021-02-28 16:27:10 tags: 算法 概念 卡特兰数 的通项公式为 又根据 组合数的计算公式: 可得: 同时满足递推关系式: 应用 1.括号化问题&#xff08;或者01的个数问题&#xff09; “ 矩阵链乘&#xff1a; Pa1a2a3……an&#xff0c;依据乘法结合律&…

每日一题 1372二叉树中的最长交错路径

题目 给你一棵以 root 为根的二叉树&#xff0c;二叉树中的交错路径定义如下&#xff1a; 选择二叉树中 任意 节点和一个方向&#xff08;左或者右&#xff09;。如果前进方向为右&#xff0c;那么移动到当前节点的的右子节点&#xff0c;否则移动到它的左子节点。改变前进方…

内存四区(个人学习笔记黑马学习)

1、内存分区模型 C程序在执行时&#xff0c;将内存大方向划分为4个区域&#xff1a; 代码区:存放函数体的二进制代码&#xff0c;由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:编译器自动分配释放,存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程…

了解JVM(JavaEE初阶系列19)

目录 前言&#xff1a; 1.JVM是如何运行的 2.JVM中的内存区域划分 3.JVM的类加载机制 3.1JVM加载机制的五大步骤 3.1.1加载 3.1.1验证 3.1.1准备 3.1.1解析 3.1.1初始化 3.2总结 3.3JVM启动时机 3.4双亲委派模型 4.JVM中的垃圾回收策略 4.1JVM垃圾回收机制概念 …

如何在Windows / Mac / iPhone / Android / Online上将MP4转换为MP3

如果只想保留MP4视频的音频轨道&#xff0c;则可以将MP4转换为MP3格式。 MP3是几乎所有设备&#xff0c;播放器和编辑器都支持的数字音频格式。无论您将MP4视频转换为MP3音频以进行脱机播放或进一步编辑&#xff0c;都可以提取音轨并保存为MP3格式。这是在不损失质量的情况下将…

封装(个人学习笔记黑马学习)

1、格式 #include <iostream> using namespace std;const double PI 3.14;//设计一个圆类&#xff0c;求圆的周长 class Circle {//访问权限//公共权限 public://属性//半径int m_r;//行为//获取圆的周长double calculateZC() {return 2 * PI * m_r;} };int main() {//通…

VC++使用Microsoft Speech SDK进行文字TTS朗读

Microsoft Speech SDK下载地址 https://www.microsoft.com/en-us/download/details.aspx?id10121 需要msttss22L.exe、SpeechSDK51.exe、SpeechSDK51LangPack.exe三个&#xff0c;下载后全部安装 使用VS2005建立一个win32控制台项目 朗读"hello word"、中文“你好”…

Mac安装brew、mysql、redis

mac安装brew mac安装brewmac安装mysql并配置开机启动mac安装redis并配置开机启动 mac安装brew 第一步&#xff1a;执行. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"第二步&#xff1a;输入开机密码 第三…