• 2024-08-15深入InnoDB核心:揭秘B+树在数据库索引中的高效应用
    目录一、索引页与数据行的紧密关联(一)数据页的双向链表结构(二)记录行的单向链表结构二、未创建索引情况(一)无索引下的单页查找过程以主键为搜索条件以非主键列为搜索条件(二)无索引下的多页查找过程三、InnoDB中的B+树索引方案初体会(一)前置说明行格式示意图页内格式示
  • 2024-08-14InnoDB-数据字典
    Version:8.0.32INFORMATION_SCHEMA压缩INNODB_CMP和INNODB_CMP_RESET提供有关压缩操作的数量和执行压缩所花费的时间的信息。INNODB_CMPMEM和INNODB_CMPMEM_RESET提供有关内存分配用于压缩的方式的信息。事务和锁INNODB_TRX:这个INFORMATION_SCHEMA表提供了当前在InnoD
  • 2024-08-14InnoDB之统计信息
    一、InnoDB统计信息简介InnoDB统计信息分为持久化统计信息和非持久化统计信息。持久化统计信息将统计信息存储在磁盘(mysql库下),在数据库重启后保证统计信息的持久访问;非持久化统计信息在数据库重启或一些特定操作后会丢失,再次使用该表时会从新计算。innodb_stats_auto_rec
  • 2024-08-11InnoDB-Online_DDL
    InnoDBOnlineDDL1.OnlineDDL的优势在繁忙的生产环境中提高响应速度和可用性,在这种环境中,使一个表在几分钟或几小时内不可用是不现实的。对于就地操作,在DDL操作期间使用LOCK子句调整性能和并发性之间的平衡的能力。比表复制方法占用更少的磁盘空间和I/O开销2.Online
  • 2024-08-08MySQL体系结构及存储引擎
    一、MySQL体系结构二、存储引擎        存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。不同的表可以指定不同的存储引擎。默认为InnoDB。--查询建表语句showcreatetable[表
  • 2024-08-08Investigating Locks in MySQL
    InvestigatingLocksinMySQLhttps://emmer.dev/blog/investigating-locks-in-mysql/AcrashcourseonlocksMySQL(andmostrelationaldatabases)haveafewdifferenttypesoflockstolimitconcurrentaccessfromdifferentsessions,protectingschemaand
  • 2024-08-06miariadb比postgre好用
    1.内存表引擎速度最快,比postgresql中的unlogged要快。postgresql内存表好像需要插件实现,原生安装不带。2.Mariadb中的Innor引擎插入和更新都要快一点。3.Mariadb中的innor选择行压缩功能,经测试能把1.5M的内容减少到700K,大约为一半。postgresql的压缩表功能好像也需要另外安装
  • 2024-08-05系统整容纪:用知识来"武装"自己~认识MySQL的锁与事务
    本文通过介绍在实际工作中一次异常排查引发的自我思考与学习,来使得读者受到一定的启发,从而迸发出星星点光,扩展出自己独有的思路,进而在工作中不断的挖掘自我不足之处,同时通过学习与"锻炼"来不断地强大自己。分享工作中的点点滴滴,贯彻千里之行,始于足下,最终以微不足道的量变引起化蝶
  • 2024-08-01MySQL 学习笔记 进阶(InnoDB引擎 下)
    InnoDB引擎 InnoDB引擎-事务原理-概述事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败。一致性(Co
  • 2024-07-31MySQL 学习笔记 进阶(锁 下,InnoDB引擎 上)
    锁 锁-表级锁-表锁介绍表级锁,每次操作锁住整张表。锁定粒度大,发生锁冲突的概率最高,并发度最低。应用在MyISAM,InnoDB,BDB等存储引擎中。对于表级锁,主要分为以下三类:表锁元数据锁(metadatalock,MDL)意向锁表锁对于表锁,分为两类:表共享读锁(readlock)表独占写锁(write
  • 2024-07-30MySQL存储引擎MyISAM和InnoDB
    目录1.1MySQL存储引擎1.1.1什么是存储引擎1.1.2MySQL5.7支持的引擎1.1.3如何选择MySQL引擎1.1.4可以根据以下的原则来选择MySQL存储引擎 1.1.5MyISAM和InnoDB的区别1.MyISAM存储引擎2.InnoDB存储引擎1.1.6关于MyISAM与InnoDB选择使用1.1.7.修改默认
  • 2024-07-30Linux中,MySQL存储引擎
    存储引擎在数据库中保存的是一张张有着千丝万缕关系的表,所以表设计的好坏,将直接影响着整个数据库。而在设计表的时候,最关注的一个问题是使用什么存储引擎。MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种都使用不同的存储机制、索引技巧、锁定水
  • 2024-07-30mysql 8 临时表空间
    mysql>optimizetableiuap_apdoc_coredoc.productapplyrange;+--------------------------------------+----------+----------+-------------------------------------------------------------------+|Table|Op|Msg_type|
  • 2024-07-30我出一道面试题,看看你能拿 3k 还是 30k!
    大家好,我是程序员鱼皮。欢迎屏幕前的各位来到今天的模拟面试现场,接下来我会出一道经典的后端面试题,你只需要进行4个简单的选择,就能判断出来你的水平是新手(3k)、初级(10k)、中级(15k)还是高级(30k)!请听题: 题目MySQL数据库中的count(1)、count(*)、count(字段)有什么区别? 请回答
  • 2024-07-30简单认识MySQL存储引擎
    MySQL体系结构连接层。一些客户端和链接服务,主要完成如连接处理、授权认证及选相关的安全方案服务层。主要完成大多数的核心服务功能,比如SQL接口,缓存的查询,SQL分析和优化,部分内置函数的执行。所以跨存储引擎的功能在这一层实现,如存储过程、函数等。引擎层。真正负责DBMS中数据
  • 2024-07-24Mysql性能优化
    以下配置需要找到MySQL的my.cnf的配置文件,在文件中修改,增加或者修改以下配置字符集character_set_server=utf8init-connect='SETNAMESutf8'validate_password=OFF大小写lower_case_table_names=1扩展设置最大链接数初始100,链接超过之后就不能连接max_connections=5
  • 2024-07-24[Mysql]InnoDB和MyISAM
    InnoDB和MyISAMInnoDB和MyISAM是MySQL数据库系统中最常用的两种存储引擎。它们各自拥有不同的特性和优化点,适用于不同的应用场景。以下是它们之间的一些主要区别:事务支持InnoDB:支持事务(ACID兼容)。它提供了提交、回滚和崩溃恢复功能,非常适合处理大量的短期事务。InnoDB的事务
  • 2024-07-22InnoDB的锁
    InnoDB是MySQL中默认的事务型存储引擎,支持ACID事务、行级锁定和外键等特性。InnoDB的锁机制是其支持高并发事务处理的关键技术之一。InnoDB主要使用两种类型的锁:行级锁和表级锁,同时还引入了意向锁来优化锁定策略。行级锁(Row-levelLocks)行级锁是InnoDB特有的锁类型,它允许对数据
  • 2024-07-22MySQL InnoDB事务隔离和并发控制面试题详解
    1.为什么MySQL使用B+树作为索引而不是B树?MySQL选择使用B+树作为索引主要有以下几个原因:减少IO次数,提高效率:B+树的所有数据都存储在叶子节点,非叶子节点只存储索引,树的高度较低,因此查找路径较短,减少了磁盘IO次数。查询效率更加稳定:由于数据仅存储在叶子节
  • 2024-07-20第三讲:深入浅出的索引上
    目录第三讲:深入浅出的索引上:引入:索引的常见模型:哈希表:结论:有序数组:弊端:二叉搜索树特点:例子:思考:为什么数据库存储使用b+树而不是二叉树“N叉”树例子:笔锋一转InnoDB的索引模型索引维护基于上面的索引维护过程说明,我们来讨论一个案例:小结:补充:问题:第三讲:深入浅出的索引上:引入:
  • 2024-07-16解读InnoDB数据库索引页与数据行的紧密关联
    目录一、快速走进索引页结构(一)整体展示说明(二)内容说明FileHeader(文件头部)PageHeader(页面头部)Infimum+Supremum(最小记录和最大记录)UserRecords(用户记录) FreeSpace(空闲空间)PageDirectory(页面目录)FileTrailer(文件尾部)二、索引页与记录行的简单关系说明(一)数据
  • 2024-07-15聚簇索引 辅助索引
    在InnoDB存储引擎中,确实使用了B+树结构来组织数据和索引,但是InnoDB采用了一种特殊的方式来结合数据和索引,这种结构被称为聚集索引(ClusteredIndex)。在InnoDB中,主键索引就是聚集索引。每张表的数据行实际上都存储在主键索引的叶子节点上。这意味着数据和主键索引是物理上紧密相
  • 2024-07-15来聊一聊MySQL InnoDB的LSN
    前言在MySQL的InnoDB存储引擎中,LSN(日志序列号)其实是一个非常重要的概念。它用来标识数据库某一特点时间点和状态。并在事务管理,崩溃恢复和数据一致性维护中发生重要作用。下面,我们来讲下LSN的实现机制。包括其生成、管理和使用方式。什么是LSNLSN是全局递增的序列号。
  • 2024-07-15mysql参考配置
    jira数据库参考配置#cat/usr/lib/systemd/system/mysqld.service[Unit]Description=MySQLServerDocumentation=man:mysqld(8)After=network.target[Service]Type=notifyUser=mysqlGroup=mysqlExecStart=/usr/local/mysql-5.7/bin/mysqld--defaults-file=/etc/my.cnf$MYSQL_O
  • 2024-07-14MySQL存储引擎的选择:深入解析与策略
    MySQL数据库管理系统之所以强大,部分原因在于它提供了多种存储引擎,每种引擎都针对特定的应用场景进行了优化。尽管MySQL支持多种存储引擎,但其中最常用且值得深入探讨的无疑是MyISAM、InnoDB以及MEMORY(HEAP)这三种。每种存储引擎都有其独特的优缺点,合理选择能够显著提升数据库的性