• 2024-09-30mysql写外键约束时不生效
    写了外键约束,删除父表内容发现删除成功解决方法查看两个表使用的引擎showcreatetable表名;发现ENGINE=MyISAM更改引擎ALTERTABLEempENGINE=InnoDB;重新写外键再次尝试删除父表内容失败MyISAM和InnoDB是MySQL中的两种存储引擎,各自有不同的特点:MyISAM:
  • 2024-09-27解读MySQL8.0数据字典重构源码
    本文分享自华为云社区《【华为云MySQL技术专栏】MySQL8数据字典重构源码解读》,作者:GaussDB数据库1.背景介绍在MySQL5.7版本的使用实践过程中,我们很容易遇到DDL崩溃后导致数据不一致的问题,具体场景描述如下:主备高可用架构部署下,备机回放执行DROPTABLE的中途,因触发其它社区
  • 2024-09-25mysql的索引
    InnoDB是mysql的默认引擎,索引原理是B+树。InnoDB的索引方式首先,数据库的目录也是很庞大的,不能放在内存里。而磁盘的读写速度是比内存慢几个数量级。而且顺序读一块比随机I/O划算,也就是局部性原理。所以:InnoDB把数据和目录都放在默认大小16KB的数据页中。每次读都读一个页
  • 2024-09-25解读MySQL8.0数据字典重构源码
    摘要:本文对社区MySQL5.7到8.0演进过程中数据字典DD的重构(缓存,持久化),AtomicDDL的关键实现进行了分析。本文分享自华为云社区《【华为云MySQL技术专栏】MySQL8数据字典重构源码解读》,作者:GaussDB数据库1.背景介绍在MySQL5.7版本的使用实践过程中,我们很容易遇到DDL崩溃后导致数
  • 2024-09-20MYSQL面试知识点手册
    第一部分:MySQL基础知识1.1MySQL简介MySQL是世界上最流行的开源关系型数据库管理系统之一,它以性能卓越、稳定可靠和易用性而闻名。MySQL主要应用在Web开发、大型互联网公司、企业级应用等场景,且广泛用于构建高并发、高可用的数据驱动系统。MySQL的发展历史:MySQL
  • 2024-09-20docker 安装 mysql 详细教程
    1.打开docker目录cd/usr/local/mkdirdocker2.创建mysql文件夹/usr/local/dockermkdirmysql3.打开mysql文件夹cdmysql/4.创建配置文件目录mkdirconfig5.打开configcdconfig/6.编写配置文件vimmy.cnf[client]#端口号port=3306[mysql]no-be
  • 2024-09-18在 MySQL InnoDB 中,允许开发人员在 MySQL 事务中手动控制锁 - 称之为“用户级锁”。
    在MySQLInnoDB中,允许开发人员在MySQL事务中手动控制锁-称之为“用户级锁”。用户级锁不直接与InnoDB的内部行或表锁定机制交互。用户级锁使用GET_LOCK()、RELEASE_LOCK()函数进行管理。用户级锁提供了更细粒度的控制,让你能在应用层实施自定义加锁策略。主要函数包括:GET_L
  • 2024-09-18如何选择适合项目的 MySQL 存储引擎?
    在选择适合项目的MySQL存储引擎时,需要考虑多个因素。以下是一些关键的考虑点和选择方法:一、了解不同存储引擎的特点InnoDB支持事务:这是InnoDB最显著的特点之一。如果你的项目需要确保数据的完整性和一致性,并且可能涉及多个操作的原子性,那么InnoDB是一个很好的选
  • 2024-09-18技术解读 MySQL InnoDB 大对象存储格式
    本文分享自华为云社区《【华为云MySQL技术专栏】InnoDB大对象存储格式解析》,作者:GaussDB数据库。1.背景在MySQL中,大字段是经常使用到的对象,例如:字符类型,包括日志、博客内容以及二进制类型的视频文件等。在InnoDB中,大字段也叫大对象(LargeObject,简称LOB),通常认为不会高频
  • 2024-09-17docker下载mysql 8
    发现自己的mysql5.7有点老了,正好借此机会卸载后重新下载新的mysql8版本,也记录一下分享给大家一.打开docker1.打开目录cd/usr/local/docker/2.创建文件夹mkdir mysql3.打开文件夹cdmysql/二、创建挂载目录1.创建数据挂载目录mkdirdata2.创建配置文件目录mkdir
  • 2024-09-17mysql 官方架构相关图
    一些来自MySQL官网的图片汇总。主要是8.4版本的manual。 架构图01Figure18.3MySQLArchitecturewithPluggableStorageEngineshttps://dev.mysql.com/doc/refman/8.4/en/pluggable-storage-overview.html架构图02:InnoDBInnoDBArchitecturehttps://dev.mysq
  • 2024-09-15InnoDB中的redo log和undo log机制
    1.redolog:RedoLog是数据库系统(尤其是MySQL的InnoDB存储引擎)中用于实现事务持久性的重要机制。它记录了事务对数据库所做的修改,确保即使数据库发生崩溃,事务的提交仍然不会丢失。RedoLog的工作原理:事务开始:当事务执行开始时,任何对数据的修改都会先写入redolo
  • 2024-09-14InnoDB索引与底层原理
    InnoDB索引与底层原理索引介绍索引:一颗B+树,除了叶子节点外,其余的节点都作为目录项,且都是有序排列的在目录项page里面,一条记录对应着下层的一个page一条记录至少有两个列:列1作为主键记录该page最小的主键值;列2记录该page的页号在叶子节点才真正地存放数据聚簇索引:以
  • 2024-09-14美团笔试2024秋1
    1、图染色法在编译原理中,寄存器分配是代码优化阶段的一项重要任务。寄存器分配的目标是为了有效地将程序中的活跃变量映射到有限数量的处理器寄存器上。在这个过程中,图染色法是一种常用的技术,它通过构建一个冲突图(其中节点代表活跃变量,边代表不能同时分配到同一寄存器的变量对
  • 2024-09-14MySQL存储引擎:InnoDB与MyISAM
    InnoDB和MyISAM是MySQL数据库中两种常用的存储引擎,它们在数据存储结构、事务支持、锁的支持、外键支持、性能等方面存在显著的差异。下面将详细介绍这两种存储引擎的特点和优势。什么是存储引擎​MySQL中的数据用各种不同的技术存储在文件(或者内存)中。每一种技术都使
  • 2024-09-13MYSQL数据库进阶篇——SQL优化
    1.插入数据优化①批量插入数据②手动提交事务③主键顺序插入大批量插入数据:2.主键优化数据组织方式页分裂:页可以为空,也可以填充一半,也可以填满,每个页包含2-N行数据,如果一行数据过大,就会行溢出。例如:页合并当删除一行数据时,实际记录并没有被物理删除,只是记录
  • 2024-09-13MYSQL进阶-锁
    锁概述锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素
  • 2024-09-13技术解读 MySQL InnoDB 大对象存储格式
    摘要:本文介绍了InnoDB大对象的存储格式,包括InnoDB会将数据行中的字段按照大对象格式进行存储的场景,InnoDB大对象溢出页存储常见存储格式,并详细介绍了InnoDB对大对象的常见组织管理方式。本文分享自华为云社区《【华为云MySQL技术专栏】InnoDB大对象存储格式解析》,作者:Ga
  • 2024-09-13MySQL8的新特性
     一字典数据与资源管理 1.1数据字典以前MySQL都是采用元数据文件、非事务性表结构或者是存储引擎特有的方式来存储字典数据,这些字典数据通常都是以数据对象为主,比如说最常见的表结构信息等。在MySQL8.0中,这些字典数据都被移动到拥有InnoDB存储引擎的事务性表中进行存储
  • 2024-09-13MySQL中常见的存储引擎有什么?
    MySQL中常见的存储引擎有什么?MySQL中有三种常见的引擎:InnoDB(默认),MyISAM,Memory。InnoDB存储引擎作为MySQL的默认存储引擎有很多特点:B+树作为索引结构,叶子节点上存放表中的数据,非叶子节点存放索引。支持事务ACID---->原子性,一致性,隔离性,持久性。事务隔离级别。(读未提交,读
  • 2024-09-13MySQL数据库之存储引擎(附简历案例,客户案例)
     作者简介:我是团团儿,是一名专注于云计算领域的专业创作者,感谢大家的关注 座右铭:   云端筑梦,数据为翼,探索无限可能,引领云计算新纪元 个人主页:团儿.-CSDN博客前言:在当今的信息化时代,数据库作为信息存储与管理的核心基础设施,其性能、可靠性和可扩展性直接决定了应用的运
  • 2024-09-12MySQL学习笔记(三)InnoDB索引
    索引概念        索引在关系型数据库中,是一种单独的、物理的对数据库表中的一列或者多列值进行排序的一种存储结构,它是某个表中一列或者若干列值的集合,还有指向表中物理标识这些值的数据页的逻辑指针清单。        索引的作用相当于图书的目录,可以根据目
  • 2024-09-12科普文:软件架构数据库系列之【MySQL5.7的系统表梳理】
    概叙MySQL5.7的系统中包含了多个重要的系统表,这些表分布在不同的数据库中,提供了关于数据库结构、权限、性能等关键信息的访问。mysql>\s;--------------mysqlVer14.14Distrib5.7.21,forWin64(x86_64)Connectionid:3Currentdatabase:Currentuser:
  • 2024-09-12【mysql】mysql之优化
     本站以分享各种运维经验和运维所需要的技能为主《python零基础入门》:python零基础入门学习《python运维脚本》: python运维脚本实践《shell》:shell学习《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战《k8》从问题中去学习k8s《docker学习》暂未更新
  • 2024-09-11MySQL学习笔记(二)InnoDB内存模型与磁盘同步机制
    InnoDB存储引擎ACID是我们在数据库设计的时候,尽可能的去满足的设计原则。A原子性、C一致性I隔离性D持久性,其中InnoDB存储引擎就是满足了我们ACID设计原则的。内存缓存结构(BufferPool)如果每次获取数据都去磁盘获取,这样效率明显比较慢。所以innoDB为了性