- 2025-01-08MySQL Innodb中的事务隔离级别和锁的关系15
前言我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式。同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力。所以对于加锁的处理,可以说就是数据库对于事务处理的精髓所在。这里通过分析
- 2025-01-05不可不知的MySQL配置参数,让数据库“稳如狗”
为了提高MySQL服务器的性能和稳定性,我们需要对其配置参数进行调整,主要包含OS配置参数和MySQL数据库配置参数,需要的小伙伴可以参考一下。OS配置部分(1)在BIOS及内核层面关闭NUMA(2)在BIOS层面将CPU、内存均设置最大性能模式(3)在BIOS层面关闭CPU节能模式(4)修改IOScheduler为deadline或
- 2025-01-03欧拉OpenEuler安装MySQL8.241227
1.安装mysqltar-xvfmysql-8.0.21-linux-glibc2.12-x86_64.tarmvmysql-8.0.21-linux-glibc2.12-x86_64/usr/local/mysql2.配置mysqlvim/etc/my.cnf[client]default-character-set=utf8mb4[mysqld]#nd-address=0.0.0.0port=3306user=mysqlbasedir=/usr/local/m
- 2025-01-03GreatSQL temp文件占用时长分析
GreatSQLtemp文件占用时长分析GreatSQLDBA在日常工作中可能会遇到这种情况,存在一个InnoDB引擎下的temp_x.ibt文件很大,但是却无法确定这个文件是什么时间由哪个连接建立的,难以支撑后续定位问题,今天这篇文章彻底讲明白这个问题。现象:发现一个实例下面(4406端口对外提供服务
- 2024-12-28InnoDB存储引擎
6.1逻辑存储结构InnoDB的逻辑存储结构如下图所示:6.2架构6.2.1概述MySQL5.5版本开始,默认使用InnoDB存储引擎,它擅长事务处理,具有崩溃恢复特性,在日常开发中使用非常广泛。下面是InnoDB架构图,左侧为内存结构,右侧为磁盘结构。6.2.2内存结构在左侧的内存结构中,主
- 2024-12-27MySQL--锁
八、锁8.1全局锁8.2表级锁表锁元数据锁(MDL)意向锁8.3行级锁行锁间隙锁&临键锁八、锁MySQL中的锁,按照锁的粒度分,分为以下三类:全局锁:锁定数据库中的所有表。表级锁:每次操作锁住整张表。行级锁:每次操作锁住对应的行数据。8.1全局锁全局锁就是对整个数据库实例加
- 2024-12-27异常断电导致mysql数据库损坏,无法启动mysql进程
起因:昨天公司意外停电,今天打开zabbix服务器,web登录管理后台时,提示Databaseerror无法登录了,在服务器上执行 sudosystemctlstartmysql.service也报错 解决思路:1、sudotail-f-n100/var/log/zabbix/zabbix_server.log 查看zabbix-server日志,报错信息如下图 2
- 2024-12-27欧拉OpenEuler安装MySQL8
1.安装mysqltar-xvfmysql-8.0.21-linux-glibc2.12-x86_64.tarmvmysql-8.0.21-linux-glibc2.12-x86_64/usr/local/mysql2.配置mysqlvim/etc/my.cnf[client]default-character-set=utf8mb4[mysqld]#nd-address=0.0.0.0port=3306user=mysqlbasedir=/usr/local/m
- 2024-12-26linux系统下docker安装mysql
记录一下步骤:1、拉取镜像:dockerpullvijayan/mysql5.62、创建mysql挂载用数据卷cd/data/software/mysqlmkdirconfmkdirlogmkdirdata3、创建mysql配置文件cd/data/software/mysql/conf vimmy.conf[client]#端口号port=3306[mysql]no-beepdefault-character
- 2024-12-26MySQL数据库——存储引擎(InnoDB、MyISAM、MEMORY、ARCHIVE)
大家好,这里是GoodNote,关注公主号:Goodnote,专栏文章私信限时Free。本文详细介绍MySQL数据库重要的存储引擎及其适用场景:InnoDB、MyISAM、MEMORY、ARCHIVE。文章目录MyISAMInnoDBMyISAMVSInnoDBMyISAM相较于InnoDB的优势MEMORYARCHIVEMEMORYVSARCHIVEM
- 2024-12-25msyql innodb缓存池的命中率
msyqlinnodb缓存池的命中率1.showstatuslikeshowstatuslike'%innodb_buffer_pool_read%';Innodb_buffer_pool_read_requests逻辑读表示向innodb缓存池进行逻辑读额次数Innodb_buffer_pool_reads物理读表示从物理磁盘读取数据的次数msyqlinnodb缓存池的命中率=(Inn
- 2024-12-24Mysql存储引擎(InnoDB-事务原理)
1、什么是事务 事务是一组命令的集合,要么全部成功,要么都不成功。事务有四个特征,即原子性、一致性、隔离性、持久性。其中隔离性又有四大隔离级别,分别是读未提交,读已提交、可重复读、串行化,四大隔离级别主要解决三个现象,脏读,不可重复读,幻读。 2、事务的四大特性(A
- 2024-12-23mysql log两个参数总结
摘录:https://developer.baidu.com/article/details/3279159在MySQL的InnoDB存储引擎中,有两个与日志相关的参数非常重要,分别是innodb_log_buffer_size和innodb_log_file_size。这两个参数对InnoDB的性能和可靠性都有很大的影响。下面我们将详细解释这两个参数的含义、如何调整它们
- 2024-12-19MYSQL
jdbc:用于Java程序访问数据库的API;原理:包含数据库驱动,连接数据库,创建操作对象,执行SQL语句,处理查询结果,释放查询资源等(使用socket连接数据库,获取statement实例执行sql语句)执行过程中,每个步骤都会生成一个虚拟表,这个虚拟表将作为下一个执行步骤的输入,最后产生的虚拟币将作
- 2024-12-19一文彻底弄懂MySQL的各个存储引擎,InnoDB、MyISAM、Memory、CSV、Archive、Merge、Federated、NDB
MySQL中的存储引擎是其数据库管理系统的核心模块,用于处理不同类型的数据存储和检索操作。每种存储引擎都有自己的特点,适用于不同类型的应用场景。MySQL最常用的存储引擎包括 InnoDB、MyISAM、Memory、CSV、Archive、Merge、Federated、NDB 等。以下是对MySQL存储引擎的详
- 2024-12-19【MySQL】InnoDB存储引擎中的页
目录1、背景2、页的组成3、各部分讲解【1】文件头部【2】页头部【3】最小记录和最大记录【4】行记录【5】空闲空间【6】页目录【7】文件尾部4、总结1、背景mysql中存储数据是存储引擎干的事,存储引擎存储数据的基本单位是页,我们往数据库插入表中的一条条记录就是存储
- 2024-12-18MySQL存储引擎-存储结构
Innodb存储结构BufferPool(缓冲池):BP以Page页为单位,页默认大小16K,BP的底层采用链表数据结构管理Page。在InnoDB访问表记录和索引时会在Page页中缓存,以后使用可以减少磁盘IO操作,提升效率。○Page根据状态可以分为三种类型:■freepage:空闲page,未被使用。■cleanp
- 2024-12-17InnoDB事务系统(二):事务的实现
事务隔离性由锁来实现。原子性、一致性、持久性通过数据库的redolog和undolog来完成。redolog称为重做日志,用来保证事务的原子性和持久性。undolog用来保证事务的一致性。有的DBA或许会认为undo是redo的逆过程,其实不然。redo和undo的作用都可以视为是一种
- 2024-12-15MySQL 中 InnoDB 存储引擎与 MyISAM 存储引擎的区别是什么?
MySQL中InnoDB存储引擎与MyISAM存储引擎是两种常见的存储引擎,它们在性能、事务支持、锁机制、数据完整性等方面存在一些显著的区别。以下是它们的主要区别:1.事务支持InnoDB:支持事务,符合ACID(原子性、一致性、隔离性、持久性)特性。事务管理通过COMMIT、ROLLBACK和SAVEP
- 2024-12-15MySQL 的 Doublewrite Buffer 是什么?它有什么作用?
MySQL的DoublewriteBuffer是什么?它有什么作用?DoublewriteBuffer是InnoDB存储引擎的一种机制,旨在提高数据的安全性,防止在写入磁盘时发生崩溃导致数据损坏。它通过将数据先写入内存中的一个缓冲区,再写入磁盘,从而确保数据一致性。DoublewriteBuffer的工作原理数据写入
- 2024-12-13MySQL InnoDB 中的数据页
文章目录1.数据库的存储结构概述1.1表空间(Tablespace)1.2段(Segment)1.3区(Extent)1.4页(Page)2.InnoDB数据页的深入解析2.1数据页的物理结构2.2数据页中的行存储2.3数据页满时的分裂与合并2.4大字段(LOB)的存储机制2.5页分裂与合并的影响3.B+Tree查询逻辑的实现
- 2024-12-13MySQL InnoDB 的锁机制
文章目录1.引言2.锁的基础概念2.1什么是锁?2.2锁的核心实现原理2.3InnoDB中锁的分类3.悲观锁与乐观锁3.1悲观锁详解3.2乐观锁详解3.3两种锁策略的性能对比4.系统锁4.1系统锁的使用场景4.2系统锁的实现方式4.3系统锁的优缺点5.表锁5.1表锁的内部实现5.2
- 2024-12-12Mysql优化
印象深刻的是刚进入一家公司,给了一个excel,里面的内容是线上慢查询的sql。因为sql太长过于复杂,然后就开启了顺着sql梳理业务的模式。这里只是单纯的优化sql,但出现系统慢的情况,IO优化应该按照以下思路进行。优化思路每个人理解的性能优化都不一样,对于数据库的性能优化,我理解的
- 2024-12-11MySQL的各种锁(表锁,行锁,悲观锁,乐观锁,间隙锁,死锁)
对于UPDATE、DELETE、INSERT语句,InnoDB会自动给涉及数据集加排他锁(X)。而MyISAM在执行查询语句SELECT前,会自动给涉及的所有表加读锁,在执行增、删、改操作前,会自动给涉及的表加写锁,这个过程并不需要我们去手动操作。那么在特定情况下,我们该如何去加锁呢?下面咱们来认真的
- 2024-12-11mysql的索引
为什么要有索引因为加速查询,快呀!!!这是我回答面试官的第一句话,哈哈。首先数据是以文件的形式存放在磁盘上面的,每一行数据都有它的磁盘地址。如果没有索引的话,要从500万行数据里面检索一条数据,只能依次遍历这张表的全部数据,直到找到这条数据。但是有了索引之后,只需要在索引里面