MySQL相关问题

news2024/9/28 18:53:22

MySQL相关问题

  • 一、MySQL支持哪些存储引擎?
  • 二、MySQL是如何执行一条SQL的?
  • 三、MySQL数据库InnoDB存储引擎是如何工作的?
  • 四、如果要对数据库进行优化,该怎么优化?
  • 五、MySQL如何定位慢查询?
  • 六、如何分析MySQL慢查询日志?

一、MySQL支持哪些存储引擎?

查询数据版本:

select version();

查询数据存储引擎:

show engines;

在这里插入图片描述

二、MySQL是如何执行一条SQL的?

在这里插入图片描述

三、MySQL数据库InnoDB存储引擎是如何工作的?

在这里插入图片描述

四、如果要对数据库进行优化,该怎么优化?

1、服务器硬件:cpu、内存、磁盘io、网卡流量;

2、服务器的操作系统:Linux的配置参数不同性能不同;

3、数据库存储引擎的选择:根据需要选择不同的存储引擎,MyISAM 不支持事务,表级锁;InnoDB 事务级存储引擎,完美支持行级锁和事务ACID特性;

4、数据库自身配置参数:MySQL有上百项的数据库配置参数;(my.cnf

5、数据库表结构的设计和SQL语句的执行效率:慢查询是性能问题的罪魁祸首,不合理的数据库表结构设计和不合理的索引是影响数据库查询性能的重要因素;

6、数据库架构:高并发下读写分离、大数据量分库分表、多级缓存、搜索引擎;

五、MySQL如何定位慢查询?

定位慢查询主要有如下几种方式:

1、业务驱动,主要是业务及运营人员或者用户反馈给我们的,他们在使用系统的过程中发现某些功能很慢,这种方式一般是项目上线后出现的,开发人员会比较被动,建议不要采用这种方式;

2、测试驱动,系统上线前通过测试人员的反馈,了解到哪些功能比较慢;

3、系统跟踪监控,比如工具Prometheus、SkyWalking(微服务中使用);

4、慢查询日志,通过开启MySQL慢查询日志监控慢查询sql并及时进行优化;

show variables like '%quer%';

修改my.cnf文件

slow_query_log = ON		#开启慢查询
long_query_time = 2		#查询时间
log_queries_not_using_indexes = ON		#没有命中索引

六、如何分析MySQL慢查询日志?

在MySQL的 bin 目录下,慢查询日志分析工具,查看帮助:

./mysqldumpslow --help

# 按平均查询时间排序,显示前十条
./mysqldumpslow -t 10 -s at /usr/local/mysql-8.0.33/data/localhost-slow.log

结果说明:Count: 2 Time=0.01s (0.02s) Lock=0.00s (0s) Rows=3.0 (6), root[root]@[192.168.0.1]

  • Count:2,告诉我们这种类型的语句执行了2次;

  • Time=0.01s(0.02s),告诉我们这类语句执行的最大时间0.01s,总共花费的时间是0.02s;

  • Lock=0.00s(0s) 锁的时间;

  • Rows=3.0 (6) 单次返回的结果数为3条记录,2次总共返回6条记录;

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java生成 word报告

Java生成 word报告 一、方案比较二、Apache POI 生成三、FreeMarker 生成 在网上找了好多天将数据库信息导出到 word 中的解决方案,现在将这几天的总结分享一下。总的来说,Java 导出 word 大致有 5 种。 一、方案比较 1. Jacob Jacob 是 Java-COM Bri…

洛谷:P3068 [USACO13JAN] Party Invitations S(枚举、前缀和)

这题我们数据范围太大,用二维肯定是不行的,我们可以采用一维线性存储。 如题意,我们可以将每组奶牛编号都存在一维数组里面,只需记录每组的头尾指针就可以了。 如题中样例我们就可以存储成1 3 3 4 1 2 3 4 5 6 7 4 3 2 1 然后第…

C语言——结构体(位段)、联合体、枚举

hello,大家好!我是柚子,今天给大家分享的内容是C语言中的自定义类型结构体、联合体以及枚举,有什么疑问或建议可以在评论区留言,会顺评论区回访哦~ 一、结构体 struct a.结构体声明 不同于数组的是,结构…

删除有序链表中重复的数字Ⅱ

题目 题目链接 删除有序链表中重复的元素-II_牛客题霸_牛客网 题目描述 代码实现 class Solution { public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * param head ListNode类 * return ListNode类*/ListNod…

旋转链表00

题目链接 旋转链表 题目描述 注意点 链表中节点的数目在范围 [0, 500] 内 解答思路 因为k可能比链表长度大,所以需要先找到链表的长度len,同时储存尾节点(需要将尾节点与首节点相连),根据k % len计算出链表需要向…

O2OA(翱途)通过服务来调用接口实现单点登录案例

本文介绍O2OA服务管理中,接口的权限设定和调用方式。 创建接口 具有服务管理设计权限的用户(具有ServiceManager角色或Manager角色)打开“服务管理平台”,进入接口配置视图,点击左上角的新建按钮,可创建一…

langchain学习笔记(十一)

关于langchain中的memory,即对话历史(message history) 1、 Add message history (memory) | 🦜️🔗 Langchain RunnableWithMessageHistory,可用于任何的chain中添加对话历史,将以下之一作为…

IntelliJ IDEA插件php golang python shell docker ignore UML plantuml等插件安装

IntelliJ IDEA插件php golang python shell docker ignore UML plantuml等插件安装 有的插件,需要代理才能搜索和下载 设置代理 不然插件搜索不到,也可能下载不了 Preferences -->Plugins --> Browse repositorise… --〉HTTP Proxy Settings… 选择 Manual…

FreeRTOS操作系统学习——内存管理

C库函数与FreeRTOS内存管理区别 在C语言的库函数中,有mallc、free等函数可以申请以及释放内存空间,那么这为什么不适用于FreeRTOS的内存管理呢? 不适合用在资源紧缺的嵌入式系统中这些函数的实现过于复杂、占据的代码空间太大并非线程安全的…

软考59-上午题-【数据库】-小结+杂题

一、杂题 真题1: 真题2: 真题3: 真题4: 真题5: 真题6: 真题7: 真题8: 二、数据库总结 考试题型: 1、选择题(6题,6分) 2、综合分析题…

LeetCode 热题 100 (尽量ACM模式刷) 持续更新!!!

LeetCode 热题 100 哈希hash 1 两数之和 /** 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。* 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案…

Claude3登顶榜首,上亚马逊云科技快人一步体验!

AI大模型春秋争霸已经进入了新的赛季,2024年3月4日,在一夜之间,Anthropic Claude 3提前"阻击"GPT-5 **Claude 3 在数学问题、编程练习和科学推理等标准化评估方面超越了现有模型。**客户可以使用人工智能驱动的响应,以自…

ZYNQ--关于一些SDK调试问题记录

Debug configuaration中没有debug applicaton 问题如下图: 解决方法: 在Target Setup中的Debug Type中选择如下即可 注意选完之后application中必须勾选运行内核,否则不运行main文件。

可以设置提醒的电脑桌面便签备忘录软件哪个好用?

对于我们职场人来说,每天的时间都很紧张且有价值,如何有效地利用它们,让时间不被浪费流逝掉,成为越来越多的人在思考的一个问题。为了有效管理时间以及各项待办事务,一些人会使用可以设置提醒的电脑桌面便签备忘录软件…

docker-compose一键离线部署系统流程

【金山文档】 未命名文件(34)https://kdocs.cn/l/cjmzJrQMhdCS

Ubuntu下安装Scala

前言 弄了一下终于成功装上了,这里对此进行一下总结 安装虚拟机 VMware虚拟机安装Ubuntu(超详细图文教程)_vmware安装ubuntu-CSDN博客https://blog.csdn.net/qq_43374681/article/details/129248167Download Ubuntu Desktop | Download | …

【Leetcode每日一题】 前缀和 - 寻找数组的中心下标(难度⭐)(28)

1. 题目解析 题目链接:724. 寻找数组的中心下标 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 核心在于计算题目所给数组是否存在某一个元素左边的和等于右边的和,存在返回那个元素下标即可,不…

springboot,druid动态数据源切换

关键字:springboot,druid数据库连接池,两个数据源(可以切换成多个),事务管理 关于druid简介传送门:https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 具体分为四…

Linux进程详细介绍

文章目录 Linux进程1、计算机体系结构和操作系统管理1.1、计算机体系结构 -- 硬件1.2、操作系统(Operator System) -- 软件 2、进程2.1、进程基本概念2.2、进程标识符2.2.1、获取当前进程标识符和当前进程的父进程标识符2.2.2、通过系统调用创建进程 -- …

FIFO漫谈

文章目录 目录 概要 整体架构流程 技术名词解释 技术细节 为什么需要FIFO? 小结 概要 FIFO,全称为First-In, First-Out,意为先进先出。它就像是一个排队买东西的队伍,第一个进入队伍的人会第一个离开队伍。在芯片中,F…