首页 > 数据库 >mysql高级

mysql高级

时间:2023-03-07 14:33:21浏览次数:37  
标签:Hash Tree 高级 支持 索引 mysql 节点

1.索引

  1. 优缺点:

   优:提高检索效率,降低IO成本。通过索引排序,降低cpu消费。

   :索引需要占用空间,降低表更新效率

      2.索引结构

          1) B+Tree:

              相比B-Tree:所有的数据只存在叶子节点。叶子节点形成单向链表

    mysql对数据结构B+Tree进行了优化,增加了一个指向相邻叶子节点的链表指针,形成了带有顺序的B+Tree

2)hash索引

特点:

    1. 因能用于对等比较(=,in),不能用于范围查询(like >)
    2. 无法进行排序操作
    3. 查询效率高,通常只需要一次查找

             Memory支持Hash索引   

3)为什么使用B+Tree?

           相比于二叉树,层数少,效率高。

           相比B-Tree,B+Tree只把数据存于叶子节点,可以降低树的高度,提高性能

           相比Hash,支持排序,范围查找

 

      

  1. 引擎

常用引擎对比

特点 InnoDb MyISAM Memory
事务 支持 - -
锁机制 行锁 表锁 表锁
B+Tree索引 支持 支持 支持
Hash索引     支持
空间使用  
内存使用 中等
批量插入速度
外键 支持    

InnoDB:默认存储引擎,支持事务,外键。如果对事务的完整性要求高,要求数据一致性,数据库出来插入,查询,还包含许多修改删除,那么选择此引擎。

MyISAM:如果以读和插入为主,只进行少量的修改,删除,对事务的完整性,并发性要求不高,可以选择。

Memory:将数据存储内存中,访问速度快。缺陷:表过大可能内存不够。

标签:Hash,Tree,高级,支持,索引,mysql,节点
From: https://www.cnblogs.com/xiaomenga/p/17188012.html

相关文章

  • 使用Python操作Mysql数据库(进阶)
    #-*-coding:utf-8-*-importloggingimportpymysqlfromrest_framework.responseimportResponselogger=logging.getLogger(__name__)#连接数据库def......
  • mysql执行计划:Explain语句结果中各个字段分表表示什么
    mysql执行计划:Explain语句结果中各个字段分表表示什么列名描述id查询语句中每出现⼀个SELECT关键字,MySQL就会为它分配⼀个唯⼀的id值,某些⼦查询会被优化为join......
  • 如何在windows环境下安装启动mysql实录
    1.下载mysql笔者下载的mysql-8.0.32-winx642.生成.ini配置文件在与bin目录同级下创建my.ini文件内容如下:(笔者的端口创建为3307,通常是3306,可自定义修改)[mysqld]#设置3307端......
  • Java链接mysql
    importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;publicclassDbcon{//mysql8.0urlconf......
  • MySQL 逻辑备份工具 MyDumper
    1、依赖安装dnfinstall-ycmakegccgcc-c++gitmake2、mydumper下载和安装#下载wgethttps://github.com/mydumper/mydumper/releases/download/v0.14.1-1/my......
  • Linux-MySQL 数据备份
    MySQL数据备份是一个非常重要的工作,保证数据的安全性和可靠性。常用方法:一、使用mysqldump工具来备份MySQL数据库。该工具可以生成SQL脚本文件,包含数据库中......
  • Mysql 主从复制和 GTID 复制
    1、安装主Mysql优化命令创建数据和日志存储目录1)安装Mysql​root@centos05~]#tarzxfmysql-8.0.32-el7-x86_64.tar.gz-C/usr/src/[root@centos05~]#mv/usr/src/m......
  • MySQL 安装过程中踩过的坑
    1、用 grep'temporarypassword'/var/log/mysqld.log生成的初始密码老提示密码错误,只能直接发大招:       A、vi/etc/my.cnf在文件的[mysqld]内增加一行 ......
  • mysql 0点 弹窗 取消
         ......
  • 巧用 CSS 变量,实现动画函数复用,制作高级感拉满的网格动画
    本文将介绍一种基于CSS变量技巧,通过合理使用CSS变量,实现CSS动画@keyframes的复用。CSS变量CSS变量大家应该都比较熟悉了,已经不能算是新知识了,快速过一遍。CSS......