说几条 MySQL 对 SQL 执行做优化手段 1、对 SQL 语句优化MySQL 会对我们 SQL 语句做重写,包括条件化简, 比如常量传递、除没用条件等等;还会将一些外连接转换为内连接,然后选择 成本最低方式执行;对 IN 子查询会进行物化、物化表转连接查询、转换为半连接等方式进行。 2、在 SQL 语句执行过程中,MySQL 引入了索引条件下推。比如 where 后面的多个搜
常见数据库面试题一.在项目中如何定位慢查询通过 druid 连接池内置监控来定位慢 SQL。通过 MySQL 慢查询日志查看慢 SQL。通过 show processlist,查看当前数据库 SQL 执行情况来定位慢 SQL。二.如何查看sql语句索引命中情况在 SQL 语句前加上 explain,结果中 key 就是实际用到索引三.说说数据库锁表场景和解决方法产生场景锁表通常发生在 D
转载 2024-08-14 11:59:41
47阅读
面试1)问题:数据库中最常见慢查询优化方式是什么?回答:加索引2)问题:为什么加索引能优化慢查询?回答:因为索引是一种优化查询数据结构,比如MySQL索引是B+树实现,而B+树就是一种数据结构,可以优化查询速度,可以利用索引快速查找数据,所以能优化查询!3)你知道哪些数据结构可以提高查询速度?回答:哈希表、完全平衡二叉搜索树、B树、B+树等等;4)那这些数据结构既然都能优化查询速度,那M
数据库优化四个维度        硬件升级        系统配置        表结构设计        sql语句及索引优化选择        优化成本:硬件升级 > 系统配置 > 表
1.SQL优化1.1如何定位及优化SQL语句性能问题对于低性能SQL语句定位,最重要也是最有效办法就是使用执行计划,MySQL提供了explain命令来查看语句执行计划 执行计划一般包含下面几个字段信息:id:表示一个查询中各个子查询执行顺序,id相同则执行顺序由上至下,id不同,id值越大优先级越高,越先被执行,id为null时表示一个结果集,不需要使用它查询,常出现在union等
转载 2023-08-10 11:04:47
74阅读
一、EXPLAIN做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划。下面来个简单示例,标注(1,2,3,4,5)我们要重点关注数据type列,连接类型。一个好sql语句至少要达到range级别。杜绝出现all级别key列,使用到索引名。如果没有选择索引,值是NULL。可以采取强制索引方式key_len列,索引长度rows列,扫描行数。该值是个预估值extra列,详细说明。注
面试题 MYSQL 数据库优化描述 在现代企业应用中,MySQL 数据库扮演着至关重要角色。随着数据急剧增长和用户访问频繁变化,数据库性能瓶颈经常成为阻碍业务发展关键因素。本篇博文将基于一个真实用户场景,深入分析 MySQL 数据库优化问题,涵盖错误现象、根因分析、解决方案及预防措施,力图为优化过程提供全面的指导。 用户场景还原 假设一家互联网公司拥有一个高流量电商平台,
原创 5月前
15阅读
MySQL 数据库面试题一、SQL 语句1. 查询一个班级里,分数排名前三位同学名字和分数。二、MySQL 索引1. 索引是用来干什么?2. 索引优缺点3. 索引适用场合4. MySQL 背后数据结构三、MySQL 事务1. 事务基本特性2. 并发事务所产生问题3. MySQL中事务隔离级别 一、SQL 语句SQL 语句使用需要慢慢积累,遇到不同场景使用不同 SQL,积累
1.​有没有做过数据库优化事情?查找、定位慢查询,并优化创建索引:创建合适索引提高查询速度分表:当一张表数据比较多或者一张表某些字段值比较多并且使用时改用水平分表和垂直分表来优化读写分离(集群):当一台服务器不能满足需要时,采用读写分离方式进行集群缓存:使用redis来进行缓存2.数据库优化读写分离一台数据库支持最大并发连接数是有限,如果用户并发访问太多,一台服务器满足不了要求可以集群处理。而Mysql集群处理技术最常用就是读写分离。主从同步数据库最终回吧数据持久化到磁
原创 2021-09-04 15:23:59
4410阅读
一面1. 二叉搜索树和平衡二叉树有什么关系,强平衡二叉树(AVL 树)和弱平衡二叉树2. B 树和 B+树区别,为什么 MySQL 要使用 B+树3. HashMap 如何解决 Hash 冲突4. epoll 和 poll 区别,及其应用场景5. 简述线程池原理,FixedThreadPool 用阻塞队列是什么?6. sychronized 和 ReentrantLock 区别7. syc
什么是最左前缀原则?什么是最左匹配原则1)顾名思义,就是最左优先,在创建多列索引时,要根据业务需求,where子句中使用最频繁一列放在最左边。 2)最左前缀匹配原则,非常重要原则,mysql会一直向右匹配直到遇到范围查询(>、<、between、like)就停止匹配,比如 a = 1 and b = 2 and c > 3 and d = 4 如果建立(a,b,c,d)顺序
二十六:MySQL复制原理以及流程 主从复制:将主数据库DDL和DML操作通过二进制日志(BINLOG)传输到从数据库上,然后将这些日志重新执行(重做);从而使得从数据库数据与主数据库保持一致。主从复制作用 1)主数据库出现问题,可以切换到从数据库。 2)可以进行数据库层面的读写分离。 3)可以在从数据库上进行日常备份。MySQL主从复制解决问题 1)数据分布:随意开始或停止复制,并在
转载 2023-07-28 16:59:26
151阅读
【每日一问】如何实现数据库优化?要解决数据库优化问题,可以从表结构优化、sql优化和索引优化三个方面考虑一、表结构优化首先,在业务场景合适情况下,我们可以尽量更小数据类型存储数据。为了减少连表查询,我们还可以适当添加冗余字段。也可以在表一些字段上建立索引,优先考虑where、order by、group by使用到字段。但是要考虑到索引失效问题。还有就是建立索引不宜过多,过多索引
数据库基础知识一:为什么要使用数据库数据保存在内存优点: 存取速度快 缺点: 数据不能永久保存数据保存在文件优点: 数据永久保存 缺点:1)速度比内存操作慢,频繁IO操作。 2)查询数据不方便数据保存在数据库1)数据永久保存 2)使用SQL语句,查询方便效率高。 3)管理数据方便二:什么是SQL?结构化查询语言(Structured Query Language)简称SQL,是一种数据库查询语言
Mysql数据库1、简单阐述数据库索引?2、什么是事务?3、事务有几大特性?分别是什么?4、简述一下数据库事务隔离?5、什么是主键索引?6、数据库排序两关键字是什么?7、char 和 varchar 区别是什么?8、说一下MySQL常用存储引擎?9、一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几?10、MySQL
性价比如上图,我们针对数据库优化优先级大致如下:高:从SQL优化、索引优化入手,优化慢SQL、利用好索引,是重中之重;中:SQL优化之后,是对数据表结构设计、横纵分表分库,对数据量级处理;低:通过修改数据库系统配置,最大化里用服务器内存等资源;低:通过以上方式还不行,那就是服务器资源瓶颈了,加机器。优化成本:硬件 > 系统配置 > 数据库表结构 > SQL及索引。优化效果:硬
候选人:这个我们主要参考阿里出那个开发手册《嵩山版》,就比如,在定义字段时候需要结合字段内容来选择合适类型
原创 2023-08-29 10:06:30
56阅读
一、EXPLAIN做MySQL优化,我们要善用EXPLAIN查看SQL执行计划。下面来个简单示例,标注(1,2,3,4,5)我们要重点关注数据select_type表示SELECT类型,常见取值有:SIMPLE:简单表,不使用表连接或子查询。PRIMARY:主查询,即外层查询。UNION:UNION中第二个或者后面的查询语句。SUBQUERY:子查询中第一个。type 表示
为什么要优化系统吞吐量瓶颈往往出现在数据库访问速度上随着应用程序运行,数据库数据会越来越多,处理时间会相应变慢数据是存放在磁盘上,读写速度无法和内存相比优化原则:减少系统瓶颈,减少资源占用,增加系统反应速度。数据库结构优化一个好数据库设计方案对于数据库性能往往会起到事半功倍效果。需要考虑数据冗余、查询和更新速度、字段数据类型是否合理等多方面的内容。将字段很多表分解成多个表对于字段较多表,如果有些字段使用频率很低,可以将这些字段分离出来形成新表。
原创 2021-12-24 16:48:34
193阅读
为什么要优化系统吞吐量瓶颈往往出现在数据库访问速度上随着应用程序
原创 2022-03-03 16:36:18
131阅读
  • 1
  • 2
  • 3
  • 4
  • 5