【Java面试题04】MySQL 篇

文章目录


一、前言🚀🚀🚀

☀️

你每一天的努力会在未来的某一个点交汇成宏伟的画面。


本文简介:本人是大三软件工程专业,java后端方向,学习路线:java基础->JDBC->Maven->MyBatis->SSM,通过做笔记分享到博客上的形式,激励自己学习,同时方便复习,欢迎大佬们评论或私信斧正 Thanks♪(・ω・)


二、MySQL 篇:☀️☀️☀️

1、MySQL 是如何实现事务的?

MySQL主要是通过:锁、RedoLog、UndoLog、MVCC来实现事务。

MySQL利用锁(行锁、间隙锁等等)机制,使用数据并发修改的控制,满足事务的隔离性

RedoLog(重做日志),它会记录事务对数据库的所有修改,当 MVSOL发生宕机或崩溃时,通过重放 redolog 就可以恢复数据,用来满足事务的持久性。

UndoLog(回滚日志),它会记录事务的反向操作,简单地说就是保存数据的历史版本,用于事务的回滚,使得事务执行失败之后可以恢复之前的样子。实现原子性和隔离性

MVCC(多版本并发控制),满足了非锁定读的需求,提高了并发度,实现了读已提交和可重复读两种隔离级别,实现了事务的隔离性。

看到这有小伙伴问一致性呢?

其实事务主要是为了实现一致性,具体是通过 AID,即原子性、隔离性和持久性来达到一致性的目的。

后序还在更新中~~~

三、总结:🍓🍓🍓

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

相关推荐
4 分钟前
TIDB——PD(placement Driver)
java·数据库·分布式·tidb·
TG:@yunlaoda360 云老大5 分钟前
配置华为云国际站代理商OBS跨区域复制时,如何编辑委托信任策略?
java·前端·华为云
计算机毕设指导67 分钟前
基于微信小程序的鸟博士系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven
C雨后彩虹14 分钟前
斗地主之顺子
java·数据结构·算法·华为·面试
断春风21 分钟前
如何避免 MySQL 死锁?——从原理到实战的系统性解决方案
数据库·mysql
CC.GG22 分钟前
【C++】AVL树
java·开发语言·c++
闲人编程22 分钟前
基础设施即代码(IaC)工具比较:Pulumi vs Terraform
java·数据库·terraform·iac·codecapsule·pulumi
QQ_216962909629 分钟前
Spring Boot大学生社团管理平台 【部署教程+可完整运行源码+数据库】
java·数据库·spring boot·微信小程序
Ahtacca33 分钟前
Maven 入门:项目管理与依赖管理的核心玩法
java·maven
玉成22634 分钟前
MySQL两表之间数据迁移由于字段排序规则设置的不一样导致失败
数据库·mysql