北京建设信源官方网站淄博营销网站建设公司

news/2025/9/23 11:12:27/文章来源:
北京建设信源官方网站,淄博营销网站建设公司,国外网络推广哪家公司好,彩票开奖网站开发面向面试知识–MySQL数据库与索引 优化难点与面试点 什么是MySQL索引#xff1f; 索引的MySQL官方定义#xff1a;索引是帮助MySQL快速获取数据的数据结构。 动力节点原文#xff1a; MysQL官方对于索引的定义:索引是帮助MySQL高效获取数据的数据结构。 MysQL在存储数据之…面向面试知识–MySQL数据库与索引 优化难点与面试点 什么是MySQL索引 索引的MySQL官方定义索引是帮助MySQL快速获取数据的数据结构。 动力节点原文 MysQL官方对于索引的定义:索引是帮助MySQL高效获取数据的数据结构。 MysQL在存储数据之外数据库系统中还维护着满足特定查找算法的数据结构这些数据结构以某种引用(指向)表中的数据,这样我们就可以通过数据结构上实现的高级查找算法来快速找到我们想要的数据。而这种数据结构就是索引。 简单理解为“排好序的帮助我们快速查找数据的数据结构” 索引的分类 逻辑分类 按照功能划分 主键索引一张表只能有一个主键索引不允许重复、不允许为null唯一索引数据列不允许重复允许为 NULL 值一张表可有多个唯一索引索引列的值必须唯一但允许有空值。如果是组合索引则列值的组合必须唯一。普通索引一张表可以创建多个普通索引一个普通索引可以包含多个字段允许数据重复允许 NULL 值插入阿里开发者手册高并发场景的表索引数量控制在五个以内全文索引它查找的是文本中的关键词主要用于全文检索。篇幅较长下文有独立主题说明 按照列数划分 单列索引一个索引只包含一个列一个表可以有多个单例索引。组合索引一个组合索引包含两个或两个以上的列。查询的时候遵循 mysql 组合索引的 “最左前缀”原则即使用 where 时条件要按照建立索引的时候字段的排列方式放置索引才会生效。索引失效的坑 物理分类 聚簇索引 聚簇是为了提高某个属性(或属性组)的查询速度把这个或这些属性(称为聚簇码)上具有相同值的元组集中存放在连续的物理块。 聚簇索引clustered index不是单独的一种索引类型而是一种数据存储方式。这种存储方式是依靠B树来实现的根据表的主键构造一棵B树且B树叶子节点存放的都是表的行记录数据时方可称该主键索引为聚簇索引。聚簇索引也可理解为将数据存储与索引放到了一块找到索引也就找到了数据。 优点 查询和更新快 数据访问速度快因为聚簇索引将索引和数据都放在同一棵B树因此聚簇索引中获取数据比飞聚簇索引更快聚簇索引对于主键的排序查找和范围查找速度非常快。 缺点 删除和插入慢插入速度严重依赖于插入顺序插入速度严重依赖于插入顺序按照主键的顺序插入是最快的方式否则将会出现页分裂严重影响性能。因此对于InnoDB表我们一般都会定义一个自增的ID列为主键主键列不要选没有意义的自增列选经常查询的条件列才好不然无法体现其主键索引性能更新主键代价很高不推荐更改主键更新主键的代价很高因为将会导致被更新的行移动。因此对于InnoDB表我们一般定义主键为不可更新。二级索引需要两次索引查找回表二级索引访问需要两次索引查找第一次找到主键值第二次根据主键值找到行数据。 补充MySQL中key、primary key、unique key、与index的区别。 详见文章一文搞懂MySQL索引清晰明了 非聚簇索引 数据和索引是分开的B树叶子节点存放的不是数据表的行记录。 虽然InnoDB和MyISAM存储引擎都默认使用B树结构存储索引但是只有InnoDB的主键索引才是聚簇索引InnoDB中的辅助索引以及MyISAM使用的都是非聚簇索引。每张表最多只能拥有一个聚簇索引。 InnoDB和MyISAM索引实现索引的数据结构 InnoDB索引实现 InnoDB使用B树存储数据除了主键索引为聚簇索引其他索引均为非聚簇索引。 一个表中只能存在一个聚簇索引主键索引但是可以存在多个非聚簇索引。 InnoDB表和索引的数据是在一起的表数据和索引的文件都放在.ibd文件中。 聚簇索引主键索引 B树叶子节点包含数据表中行记录就是聚簇索引索引和数据是存放在一块的 可以看到叶子节点包含了完整的数据记录这就是聚簇索引。因为InnoDB的数据文件.idb按主键聚集所以InnoDB必须有主键MyISAM可以没有如果没有显示指定主键则选取首个为唯一且非空的列作为主键索引如果还没具备则MySQL自动为InnoDB表生成一个隐含字段作为主键这个字段长度为6个字节类型为长整形。 ; 主键索引结构分析 数据保存以key-value的形式保存。 B树所有的数据都存放在叶子结点非叶子结点只保存键值方便查找 B树所有的结点都保存数据 对于MySQL中的InnoDB数据库引擎的主索引索引即数据数据即索引。方便范围查找以及顺序查找同时存在普通索引帮助查找某些被查找频率较高的字段。如果需要较多索引推荐使用联合索引以提高索引的利用效率。 索引的优缺点 参考文章一文搞懂MySQL索引清晰明了 MySQL体系结构 自上而下分为四层 ① 网络接入层 ② 服务层 ③ 存储引擎层 ④ 文件系统层 网络接入层 提供了应用程序进入MySQL服务的接口。客户端与服务器建立连接客户端发送SQL到服务端。 服务层 管理工具和服务 系统管理和控制工具例如备份恢复、MySQL复制、集群等。 连接池 主要负责连接管理、授权认证、安全等。 主要负责连接管理、授权认证、安全等等。每个客户端连接都对应着服务器上的一个线程。服务器上维护了一个线程池避免为每个连接都创建销毁一个线程。当客户端连接到MySQL服务器时服务器对其进行认证。可以通过用户名与密码认证也可以通过SSL证书进行认证。登录认证后服务器还会验证客户端是否有执行某个查询的操作权限。 SQL接口 查询解析器 查询优化器 缓存8.0以前支持查询缓存8.0之后就不支持了 存储引擎层 索引是占用物理空间的在不同的的存储引擎中索引存在的文件也不同。存储引擎是给予表的以下是分别使用MyISAM和InnoDB分别建立的两张表。 当存储引擎是MyISAM时 *.frm与表相关的元数据信息都存放在frm文件包括表结构的定义信息等*.MYDMyISAM DATA用于存储MyISAM表的数据*.MYIMyISAM INDEX用于存储MyISAM表的索引信息 当是InnoDB时 文件系统层 *.frm与表相关的元数据信息都存放在frm文件包括表结构的定义信息等 *.ibdInnoDB DATA表数据和索引的文件。该表的索引B树的每个非叶子节点存储索引叶子节点存储索引和索引对应的数据 参考文章10分钟了解MySQL体系构架、存储引擎和索引结构

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

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

相关文章

漳州网站建设去博大a优韩国建筑网站

目录 一、Tinymce介绍 二、React集成Tinymce 1、安装tinymce/tinymce-react组件 2、React中引用 三、如何配置中文语言包 1、下载中文包 2、把语言文件放入tinymce 3、tinymce配置项中配置语言 一、Tinymce介绍 官网:The Most Advanced WYSIWYG Editor | T…

南阳网站排名优化报价这几年做那个网站能致富

目录 11.2.4 方法 setUp() 注意 11.3 小结 第二部分 项目1 外星人入侵 第12 章 武装飞船 注意 12.1 规划项目 12.2 安装 Pygame 注意 12.2.1 使用 pip 安装 Python 包 注意 如果你启动终端会话时使用的是命令python3,那么在这里应使用命令…

网络技术网站专业网站开发平台

本文介绍go语言处理字符串类型的常见函数。 ## 多行字符串 在 Go 中创建多行字符串非常容易。只需要在你声明或赋值时使用 () 。 str : This is a multiline string. ## 字符串的拼接 go // fmt.Sprintf方式拼接字符串 str1 : "abc" str2 : "def" …

建网站后如何维护如何优化公司的网站

复杂连接是指涉及多个表之间的连接操作,通过使用条件和连接类型来组合和关联这些表的数据。 一、常见的复杂连接类型及其特点、使用方法和示例代码: 1. INNER JOIN(内连接): - 特点:返回两个表中满足连接…

广西建设工程质量监督网站青岛网站设计推广

dfddfdd 转载于:https://www.cnblogs.com/jiangfeilong/p/10432174.html

国外有哪些优秀的网站手表哪个网站最好

格式化硬盘意味着擦除硬盘上的任何信息和设置文件系统,以便操作系统可以从硬盘读取数据并将数据写入硬盘。如果你计划在Windows中使用硬盘,则需要格式化硬盘。 如何在Windows中格式化硬盘 按照以下简单步骤在Windows 11,Windows 10,Windows 8,Windows 7,Windows Vista或…

婚庆类的模板网站wordpress网店主题

nginx常用的命令 使用nginx操作命令前提条件:必须进入nginx的目录 cd /www/local/webserver/nginx/sbin查看nginx的版本号 ./nginx -v启动nginx ./nginx关闭nginx ./nginx -s stop重新加载nginx ./nginx -s reload

如何在个人电脑用源码做网站湛洪波.jsp网站开发详解

雷锋网按:业界普遍认为未来从数据中将能挖掘出最大的价值,但要挖掘数据的价值除了需要很强的计算能力之外,数据的存储也非常关键。目前,新型存储器也是领先的企业非常关注的一个方向,兰开斯特大学(Lancaster Universit…

高端网站建设哪家更专业东城建设网站

来源:资本实验室据CB Insights最新数据,截至2019年8月底,全球共有393家未上市公司的估值达到或超过10亿美元以上,也就是我们俗称的“独角兽”公司。这些公司的融资总额超过2920亿美元,平均融资额超过7.43亿美元&#x…

做网站客户改来改去顺德网站制作

常见导航样式: 根据产品的特性,导航可以混合使用,体现形式多样化。 不能为了追求多样化,滥用导航类型。 扁平式导航: 在一级页面提供导航栏,一般处于顶部/底部,适合频繁切换的模块&#xff0c…

科技有限公司起名大全成都网站排名生客seo

说起接口测试,相信大家在工作中用的最多的还是Jmeter。 JMeter是一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA 等多种协议。 在做…

网站如何备份数据网站建设技术支持有什么

首先了解 proxy_buffers 是Nginx中用于配置代理服务器响应的缓冲区大小的指令,它对于优化Nginx服务器性能以及提升用户体验至关重要。通过合理设置proxy_buffers及其相关参数,可以有效地管理服务器资源,提高处理请求的效率,减少数…

上海杨浦区建设网站需要一个网站

简言 最近在vue3使用swiper时,突然发现loop属性和slides-per-view属性同时存在启用时,loop生效,下一步只能生效一次的bug,上一步却是好的。非常滴奇怪。 解决过程 分析属性是否使用错误。 loop是循环模式,布尔型。 …

做网站要的带宽是什么长春微网站

概述 玩了很久的SD,感觉已经没有一开始的激情了,最近有幸看到了几篇关于提示词的指导文章,突然感觉又发现了新大陆,整理后供大家一起学习。 好的提示词应该包含如下几个模块: Anatomy of a good prompt解析好的提示…

jsp网站开发典型模块与实例精讲全国培训加盟网站建设

法国数学家傅里叶男爵在1822年出版的《热分析理论》一书中指出,任何周期函数都可以表示为不同频率的正弦和或余弦和(每个正弦项/余弦项乘不同的系数)的形式,这其实就是无穷级数的一种:傅里叶级数。无穷级数的思想是通过…

谢岗网站仿做山东省住房建设厅网站安全处

前言 2024年,移动广告的钱越来越难赚了。市场竞争激烈到前所未有的程度,小型企业和独立开发者在巨头的阴影下苦苦挣扎。随着广告成本的上升和点击率的下降,许多原本依赖广告收入的创业者和自由职业者开始感受到前所未有的压力。 &#x1f3…

免费网站奖励自己游戏学编程的步骤

ASP.net与SQLite数据库通过js和ashx交互(连接和操作):废话(也是思路):用的是VS2010,打算做网站前后台。由于不喜欢前台语言里加些与html和css和js的其他内容,想实现前后台语言的分离,与前后台通过js的ajax实现交互&…

网站运营职责美橙极速建站系统

介绍 :list 即是 链表。链表是一种非常常见的数据结构,特点是易于数据元素的插入和删除并且且可以灵活调整链表长度,但是链表的随机访问困难。许多高级编程语言都内置了链表的实现比如 Java 中的 LinkedList,但是 C 语言并没有实现…

专做英文类网站做编程网站有哪些内容

一、命令行解释器shell的原理 我们已经知道Linux给我们提供了一系列由exec开头的系统调用接口,可以让我们在自己所写的程序中调用各种指令或者我们自己写的其他程序: 而我们的shell命令行解释器也是接收用户输入的指令,然后执行:…

无人机、人形机器人 —— 电池电压(电量)对运行状态的影响

无人机、人形机器人 —— 电池电压(电量)对运行状态的影响某无人机设备,正常工作电压3.3V,当电源电力不足时其电压会降低到3.3V以下,而在此种情况下电机的工作处于非正常状态(电机的运行状态,转速等不在飞控软件…