数据库的隔离级别

简介: 数据库事务隔离级别包括:读未提交(脏读、不可重复读、幻读)、读提交(避免脏读,但存在后两者,Oracle和SQL Server默认)、可重复读(保证多次读一致,解决不可重复读,MySQL默认)、可串行化(最高级别,串行执行,杜绝所有问题但性能差,极少使用)。

读未提交:指一个事务读取另一个事务未提交的修改。,会发生脏读、不可重复读、幻读。 读提交:指只能读到已经提交的内容。会发生不可重复读和幻读。是SQL Server和Oracle的默认隔离级别。 可重复读:指当数据被读取时,不可进行update操作,保证多次读取的记录是相同的,解决了不可重复读的问题。但幻读是insert导致,不会避免。可重复读是MySQL的默认隔离级别。 可串行化读:这是数据库最高的隔离级别,这种级别下,事务“串行化顺序执行”,也就是一个一个排队执行。这种级别下,“脏读”、“不可重复读”、“幻读”都可以被避免,但是执行效率奇差,性能开销也最大,所以基本没人会用。

相关文章
|
8月前
|
SQL 存储 关系型数据库
数据库的行级锁与表锁
表锁无死锁,但并发低,读写互斥;行锁基于索引,支持高并发,但可能死锁。若SQL未走索引,行锁失效转为表锁。行锁适用于避免不可重复读,事务中增删改自动加排他锁,且不可锁定同一索引。
|
JavaScript jenkins 测试技术
这10款性能测试工具,收藏起来,测试人的工具箱!
这10款性能测试工具,收藏起来,测试人的工具箱!
2069 1
|
8月前
|
Java 数据库
[舍弃,后续需调整][Blog]JPA实现分页需求(☆☆)
新人已搭建本地环境,今日任务为改造博客网站的查询功能,实现分页显示。可基于三层架构修改或使用提供的基础工程,并在数据库中添加足够数据以展示分页效果,参考示例图与代码压缩包完成开发。
718 2
[舍弃,后续需调整][Blog]JPA实现分页需求(☆☆)
|
8月前
|
前端开发 API 数据库
如何写好一篇技术方案
本文档为项目需求说明模板,涵盖背景目标、功能模块、流程图、UML设计、API与数据库设计等内容,支持表格、思维导图、时序图等多种视图,便于团队协作与排期管理,提升产研效率。
|
8月前
|
SQL
SQL语句的优先级顺序
SQL查询流程简介:从指定表提取数据,通过JOIN关联多表并按ON条件生成临时表,用WHERE筛选记录,再按GROUP BY分组,HAVING过滤分组数据,SELECT确定显示列,最后用ORDER BY排序结果。
|
8月前
|
数据库
事务的四大特性
事务的四大特性:原子性确保操作全成功或全回滚;一致性保证数据完整性;隔离性防止并发干扰;持久性使提交后的更改永久保存,即使系统故障也不丢失。
|
8月前
|
存储 SQL 缓存
数据库执行查询请求的过程
客户端通过TCP连接请求服务端,经连接器验证主机、用户名密码后建立连接。服务端为客户端创建进程交互,并缓存连接以复用。8.0前支持查询结果缓存,后因维护成本高被移除。SQL语句经分析器解析后,由优化器选择最优执行方案,执行器校验权限并调用存储引擎接口获取数据。
|
8月前
|
存储 数据库
三大范式的特点
数据库设计三大范式:第一范式要求列不可分、无重复;第二范式要求属性完全依赖主键,实现行唯一标识;第三范式要求消除传递依赖,避免非主属性冗余,提升数据一致性与存储效率。(238字)
|
8月前
|
缓存 搜索推荐 关系型数据库
MySQL可以从哪些方面做到性能优化
合理创建索引,避免SELECT *,按需查询字段。采用垂直与水平分表减轻数据库压力,垂直分割列,水平分割行。选用合适搜索引擎,实现主从同步与读写分离,结合缓存机制提升性能,均衡冷热数据分布,优化整体系统负载。
|
8月前
|
SQL 关系型数据库 MySQL
【SQL优化】不再抓瞎!手把手教你读懂MySQL Explain执行计划
本文详解MySQL执行计划工具EXPLAIN,教你读懂其输出的“天书”表格。重点掌握四个核心指标:`type`(访问类型)、`key`(实际使用索引)、`Extra`(额外信息)和`rows`(扫描行数)。通过实战案例解析慢查询成因与优化方案,助你快速定位SQL性能瓶颈,写出高效数据库查询。

热门文章

最新文章