MySQL面试知识汇总

news2024/9/27 21:15:38

学习链接

  1. 创建索引有哪些注意点?
  1. 索引应该建在查询频繁的字段,比如where查询、order排序
  2. 索引的个数应该适量(最多64个),索引需要占用空间,更新时也需要维护
  3. 区分度低的字段,例如性别,不要建索引
  4. 频繁更新的值,不要作为索引,维护索引文件需要成本,还会导致页分裂、IO次数增多
  5. 联合索引把散列性高的值放在前面,可以更好的满足最左前缀匹配原则
  6. 尽可能用联合索引代替多个单列索引
  7. 过长的字段,使用前缀索引,即截取字段的前面一部分内容建立索引
  8. 不建议用无序的值作为索引
  1. 索引哪些情况下会失效?
  1. 查询条件包含or,可能会导致索引失效
  2. 如果字段类型是字符串,where时一定用引号括起来,否则会因为隐式类型转换,索引失效
  3. like通配符可能导致索引失效
  4. 联合索引,查询时的条件不是联合索引中的第一个列,索引失效
  5. 在索引列上使用mysql的内置函数,索引失效
  6. 对索引列运算(如:加减乘除、!= /<> /not in),索引失效
  7. 索引字段上使用 is null is not null,可能会导致索引失效
  8. 左连接查询或者右连接查询 查询关联的字段编码格式不一样,可能导致索引失效
  9. MySQL优化器估计使用全表扫描要不使用索引快时,不适应索引
  1. 解释下MySQL上事务的四大特性ACID,及实现
  1. 原子性::redo log(被称为重做日志,是物理日志,事务提交时,必须先将事务的所有日志写入redo log持久化)
  2. 一致性:undo log(是逻辑日志,记录了事务的insert、update和delete操作,回滚时执行相反的操作)
  3. 隔离性:数据库锁及MVCC机制
  4. 持久性:redo log
  1. 事务的各个隔离级别都是如何实现的?
  1. 读未提交
  2. 读已提交
  3. 可重复读
  4. 串行化
    在这里插入图片描述
  1. MySQL 主从同步延迟怎么处理?

原因:当数据库主库有较大更新并发操作时,可能会导致主从同步延迟,因为从库里面读取binlog的线程只有一个,当某个SQL在从库中执行的时间稍长,或者由于某个SQL要进行锁表就会导致主从同步延迟,主库的SQL大量积压,未被同步到从库里。就会导致主从不一致,即主从延迟。
主从同步延迟的解决方法:

  1. 写操作后的读操作指定发给数据库主库
  2. 读从库失败后,再读一次主库
  3. 关键业务读写操作全部指向主库,非关键业务采取读写分离
  1. 水平分表有哪几种路由方式?
  1. 范围路由:选取有序的数据列作为路由的条件,不同分段分散到不同的数据库表中;(单表数据量在 100w~1000w)
  2. Hash路由:选取某个列(或者某几个列组合)的值进行Hash运算,然后根据Hash结果分散到不同的数据库表中。(缺点:初始表的数量选取不好确定,且扩容比较麻烦)
  3. 配置路由:用一张独立的表来记录路由信息。(缺点是必须多查一次)
  1. 分库分表如何实现不停机扩容?
  1. 第一步:在线双写,查询走老库
    在这里插入图片描述>

  2. 第二步:在线双写,查询走新库
    在这里插入图片描述

  3. 第三步:旧库下线
    在这里插入图片描述

  1. 分库分表会带来哪些问题?

分库的角度:

  1. 事务的问题
  2. 跨库JOIN问题:1. 代码层面关联 2. 数据异构:同步到ES的大宽表

分表的角度:

  1. 跨节点的count、order by、group by以及聚合函数问题
  2. 数据迁移、容量规划、扩容等问题
  3. ID问题
  1. 数据库CPU飙升怎么解决?

在这里插入图片描述

  1. xxxx

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

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

相关文章

声阔头戴式耳机怎么样?西圣、jBL、声阔头戴式耳机终极pk测评推荐

我们深知&#xff0c;一款优秀的头戴式耳机&#xff0c;不仅仅是音乐的传递者&#xff0c;更是用户情感与个性的延伸。因此&#xff0c;在设计之初&#xff0c;便将极致的佩戴舒适度视为核心追求&#xff0c;通过人体工学的精准设计与优质材料的精心挑选&#xff0c;力求让每一…

Linux 配置与管理 SWAP(虚拟内存)

Linux 配置与管理 SWAP(虚拟内存&#xff09; 一、作用二、创建交换文件&#xff08;以创建一个2GB的交换文件为例&#xff09;1. 创建交换文件2. 设置文件权限2.1. **关于 sudo chmod 600 /root/swapfile 是否一定要执行**2.2. **关于其他用户启动是否没权限用到交换分区** 3.…

大数据电商数仓项目--实战(一)数据准备

第一章 数仓分层 1.1 为什么要分层 1.2 数仓命名规范 1.2.1 表命名 ODS层命名为ods_表名DIM层命名为dim_表名DWD层命名为dwd_表名DWS层命名为dws_表名DWT层命名为dwt_表名ADS层命名为ads_表名临时表命名为tmp_表名 1.2.2 表字段类型 数量类型为bigint金额类型为decimal(16…

猫咪独自在家可以吗?希喂、美的、有哈宠物空气净化器哪款好?

这不是快要国庆了吗&#xff0c;本来计划去旅游的&#xff0c;结果我妈让我假期回家。收拾行李已经很烦了&#xff0c;行李箱旁的猫咪更是让我头疼。我妈因为之前浮毛过敏的事情&#xff0c;禁止我把猫咪再带回家&#xff0c;朋友们也各有计划&#xff0c;甚至连上门喂养都约满…

设备管理与点巡检系统

在现代企业管理中&#xff0c;设备的高效运作至关重要。为此&#xff0c;我们推出了设备管理与点巡检系统&#xff0c;通过自动化管理提升设备使用效率&#xff0c;保障生产安全。 系统特点 设备全生命周期管理 系统涵盖设备的各个阶段&#xff0c;从设备管理、点检、巡检、保…

计算曲线5s1-2的斜率

在行列可自由变换的条件下&#xff0c;平面上的5点结构只有34个 这次将5点结构通过结构加法化成2点结构5s1-4-3-2&#xff0c;并比较5s1-4-3-2的变化规律。 (A,B)---6*n*2---(0,1)(1,0) 分类A和B&#xff0c;A是34个5点结构&#xff0c;让B全是0。当收敛误差为7e-4&#xff0…

Netty源码解析-响应式实现(Reactor模式)

Netty基本介绍&#xff0c;参考 Netty与网络编程 1、Netty如何支持Reactor模式 1.1 主从Reactor模式 实现这种模式需要定义两个EventLoopGroup&#xff0c;bossGroup就是mainReactor&#xff0c; workerGroup就是subReactor&#xff0c; 接着我们进入下图的b.group方法 1.…

Tomcat部署及其优化

目录 一、Tomcat概述 二、Tomcat的组成 三、Tomcat请求过程 四、Tomcat服务部署 五、/usr/local/tomcat/目录下的主要目录说明 六、Tomcat虚拟主机配置 七、Tomcat优化 1.Tomcat配置文件参数优化 2.Tomcat JVM优化 一、Tomcat概述 Tomcat是基于java语言开发&#xff0c…

传知代码-轻量注意力网络实现苹果叶片识别

代码以及视频讲解 本文所涉及所有资源均在传知代码平台可获取 引言 该系统基于EfficientNet与多头自注意力机制&#xff0c;构建了一个高效、精准的苹果叶片识别模型&#xff0c;能够对不同种类的苹果叶片进行准确分类。通过结合EfficientNet的强大特征提取能力和多头注意力…

Ks渲染做汽车动画吗?汽车本地渲染与云渲染成本分析

Keyshot是一款强大的实时光线追踪和全域光渲染软件&#xff0c;它确实可以用于制作汽车动画&#xff0c;包括汽车模型的渲染和动画展示。Keyshot的动画功能允许用户创建相机移动、物体变化等动态效果&#xff0c;非常适合用于汽车动画的制作。 至于汽车动画的渲染成本&#xff…

Power Platform开发小技巧,一天一个APP, 如何快速搭建二维码识别器

之前&#xff0c;给大家分享了微软Power Platform开发课程——手把手教你搭建二维码生成器&#xff0c;很多小伙伴反馈真好用。这期我们继续为大家分享Power Platform的开发能力与技巧。 今天介绍如何开发⼀个⼆维码识别器。 该应用包含如下功能&#xff1a; 1.⼆维码图片的…

尾矿库安全监测系统:守护矿山安全的关键技术

尾矿库是矿山企业用于存放尾矿的重要设施&#xff0c;其安全状况直接关系到周边环境和人民生命财产安全。近年来&#xff0c;随着技术的不断进步&#xff0c;尾矿库安全监测系统应运而生&#xff0c;为尾矿库的安全管理提供了强有力的技术支持。本文将详细介绍尾矿库安全监测系…

基于spi机制构造的webshell

前言 最近在翻阅yzddmr6师傅博客的时候&#xff0c;发现师傅还有个github的地址 https://github.com/yzddmr6/MyPresentations 里面发现师傅去补天白帽子大会上讲解了一些webshell的攻防&#xff0c;特此进行了学习&#xff0c;然后发现了一个很有意思的webshell&#xff0c…

YOLOv9改进,YOLOv9主干网络替换为PP-LCNetV2(百度飞浆视觉团队自研,轻量化架构),全网独发

摘要 PP-LCNetV2 是在图像分类任务中提出的一种轻量级卷积神经网络,用于在边缘设备上实现高效的推理。PP-LCNet 系列模型的设计旨在提高移动和边缘设备上的推理性能,同时保持较高的准确率。PP-LCNetV2 是在 PP-LCNetV1 基础上改进的。 理论介绍 PP-LCNetV2模型结构如下: …

数据库存储加密技术有哪些 TDE透明加密和列表级加密

透明数据加密&#xff08;TDE&#xff09;和列级加密是数据库加密中两种常见的加密方式&#xff0c;它们在加密范围、实现方式以及对应用程序的影响等方面存在明显的区别。 透明数据加密&#xff08;TDE&#xff09; 定义&#xff1a; 透明数据加密&#xff08;Transparent …

稀土阻燃协效剂-氢氧化镁(氢氧化铝)的应用

稀土阻燃协效剂凭借独特的稀土4f电子层结构,在聚合物材料燃烧时可催化酯化成炭,迅速在高分子表面形成致密连续的碳层,隔绝聚合物材料内部的可燃性气体与氧气的接触,从而达到阻燃抑烟的效果,且燃烧时不产生有毒有害气体。 金士镧系列稀土阻燃剂是一种基于稀土协效阻燃的复合阻燃…

CTF竞赛介绍以及刷题网址(超详细)零基础入门到精通,收藏这一篇就够了

CTF&#xff08;Capture The Flag&#xff09;中文一般译作夺旗赛&#xff0c;在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会&#xff0c;以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。发展至今&…

安全防护装备检测系统源码分享

安全防护装备检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer…

D18【python接口自动化学习】-python基础之内置数据类型

day18 综合练习&#xff1a;实现手机通讯录&#xff08;下&#xff09; 学习日期&#xff1a;20240925 学习目标&#xff1a;内置数据类型--27 小试牛刀&#xff1a;如何使用类型转换实现手机通讯录&#xff08;下&#xff09; 学习笔记&#xff1a; 实现手机通讯录 案例文…

以题为例浅谈反序列化漏洞

什么是反序列化漏洞 反序列化漏洞是基于序列化和反序列化的操作&#xff0c;在反序列化——unserialize()时存在用户可控参数&#xff0c;而反序列化会自动调用一些魔术方法&#xff0c;如果魔术方法内存在一些敏感操作例如eval()函数&#xff0c;而且参数是通过反序列化产生的…