MySQL之初识索引

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介: MySQL之初识索引

MySQL是目前最流行的关系型数据库了,今天我们就不学习MySQL的基本使用了,直接上索引学习。


什么是索引?


在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或者若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。

索引的作用相当于图书中的目录,可以根据目录中的页码,以供快速找到相关内容。


MySQL中有哪些索引?


从数据结构角度


从数据结构角度来说,可以分为BTree、HASH、FULLTEXT、R-Tree四大类。


从物理存储角度


从物理存储角度来分类的话,可以分为聚集索引、非聚集索引。


从逻辑角度


从逻辑角度,也是我们日常中最常见到的角度,分别分为下面几类:

1.普通索引,可供加速查询。

2.唯一索引,加速查询 + 列值唯一性(可以有null值)。

3.主键索引,加速查询 + 列值唯一性(不可以有null),因为是主键索引,当然是涉及主键列,所以主键索引只会在一张表里存在一个。

4.组合索引,这个稍微特殊点,是由多列值组成一个索引,专门用于组合搜索,效率也大于索引合并。

5.全文索引,对文本的内容进行分词,进行快速搜索。


索引基本使用


创建普通索引,如下SQL:

create index suoyin_test on tablename (table_column_name);

创建唯一索引和普通索引也差不多,只不过是在index前面指定一个unique。

create unique index suoyin_test on tablename (table_column_name);

如何查询索引信息,如下SQL:

show index from tableName;

注意:不是所有情况都能去使用索引,在数据量没有到达一定量级的情况下,用索引反而会变慢,所以索引还是要慎用。


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
15天前
|
存储 关系型数据库 MySQL
Mysql索引总结(1)
Mysql索引总结(1)
23 0
|
15天前
|
存储 关系型数据库 MySQL
MySQL 索引的10 个核心要点
MySQL 索引的10 个核心要点
20 0
|
15天前
|
SQL 关系型数据库 MySQL
MySQL8.0索引新特性
MySQL8.0索引新特性
17 0
|
1天前
|
存储 SQL 关系型数据库
完蛋!😱 我被MySQL索引失效包围了!
完蛋!😱 我被MySQL索引失效包围了!
|
1天前
|
SQL 存储 关系型数据库
MySQL的3种索引合并优化⭐️or到底能不能用索引?
MySQL的3种索引合并优化⭐️or到底能不能用索引?
|
1天前
|
SQL 存储 关系型数据库
MySQL索引及事务
MySQL索引及事务
9 2
|
1天前
|
存储 SQL 关系型数据库
MySQL索引,看这一篇就够了!
MySQL索引,看这一篇就够了!
|
1天前
|
Java 关系型数据库 MySQL
MySQL 索引事务
MySQL 索引事务
12 0
|
2天前
|
存储 SQL 关系型数据库
MySQL 底层数据结构 聚簇索引以及二级索引 Explain的使用
MySQL 底层数据结构 聚簇索引以及二级索引 Explain的使用
13 0
|
2天前
|
自然语言处理 关系型数据库 MySQL
一文明白MySQL索引的用法及好处
一文明白MySQL索引的用法及好处
11 0