`
plumecity
  • 浏览: 18289 次
  • 性别: Icon_minigender_1
  • 来自: 江苏
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Mysql存储引擎及事务级别

阅读更多
存储引擎

       Mysql比较常用的存储引擎,MyISAM和InnoDB,其中MyISAM不支持事务,如果需要大量的select操作,MyISAM是一个不错的选择,InnoDB支持事务,如果需要大量的select和insert操作,可选择InnoDB。

       其中InnoDB支持AutoCommit,默认是打开状态,也就是每写一条记录,Mysql都会自动Commit一次,此时读操作会很慢,而且一般如果如果程序中控制事务,此时是会冲突的,所以我们应该将AutoCommit关闭


事务处理级别


  • 未提交读(Read Uncommitted):允许脏读;也就是可能读取到其他会话中未提交事务修改的数据
  • 提交读(Read Committed):不允许脏读,允许幻象读;只能读取到已经提交的数据。Oracle等多数数据库默认都是该级别。
  • 可重复读(Repeated Read):不允许脏读,也不允许幻象读,在同一个事务内的查询都是事务开始时刻一致的,也就是说不会同一个Session不会读到别的Session所提交的数据。mysql的InnoDB默认该级别。
  • 串行读(Serializable):完全串行化的读,每次读都需要获得表级共享锁,读写相互都会阻塞



常见的WEB应用中,如果使用Spring处理事务,如何设置Mysql


  • 应设置Mysql为InnoDB存储引擎
  • 将Mysql的AutoCommit关闭,设为flase; (set autocommit=0;)
  • 建议将Mysql的事务级别设为提交读级别,因为Mysql默认的是可重复读,该事务级别不支持幻象读(set transaction isolation level read committed; )
分享到:
评论

相关推荐

    MySQL内核:InnoDB存储引擎 卷1.pdf.zip

    InnoDB作为MySQL中最常用且最重要的存储引擎,负责处理事务处理、数据完整性以及并发控制等关键任务,因此对它的深入理解对于数据库管理员和开发者至关重要。 InnoDB存储引擎是MySQL中的默认存储引擎,特别适合需要...

    mysql插件式存储引擎体系结构

    接下来,我们将详细介绍几种常用的MySQL存储引擎: - **MyISAM**:这是MySQL的默认存储引擎之一,适用于Web应用和数据仓库环境。MyISAM不支持事务处理,但它提供了较快的读写速度,非常适合于读多写少的应用场景。 ...

    Innodb存储引擎浅析—事务系统

    ### Innodb存储引擎浅析—事务系统 #### 学述 在MySQL的众多存储引擎中,InnoDB无疑是最为重要且被广泛使用的之一。本文旨在深入解析InnoDB存储引擎中的事务处理机制及其背后的设计原理。 #### 存储引擎介绍 在...

    MySQL事务隔离级别

    MySQL通过InnoDB存储引擎实现了事务处理,并支持四种隔离级别。可以通过`SET TRANSACTION ISOLATION LEVEL`语句来设置当前会话的事务隔离级别。此外,InnoDB还提供了一些特定的特性,如Next-Key Locks,以帮助解决幻...

    MySQL技术InnoDB存储引擎_姜承尧_第2版

    在MySQL数据库中,InnoDB存储引擎扮演着至关重要的角色,它是支持事务处理、行级锁定以及外键约束的主要引擎。InnoDB的引入使得MySQL能够满足企业级应用的需求,提供了高度的数据一致性与可靠性。 首先,InnoDB的...

    深入解析:MySQL存储引擎的奥秘

    通过本文的详细介绍,我们深入了解了MySQL存储引擎的重要性以及不同存储引擎的特点和应用场景。选择合适的存储引擎对于优化MySQL数据库性能和确保数据一致性至关重要。希望本文能够帮助您更好地理解和运用MySQL存储...

    mysql架构与存储引擎(MySQL逻辑架构、InnoDB引擎、MyISAM引擎、存储引擎选择).docx

    不同的存储引擎具有不同的特性,如支持事务处理、锁定级别、索引类型等。选择合适的存储引擎对于提高数据库性能至关重要。 ##### 2、支持关系 MySQL支持多种存储引擎,可以通过以下命令查看当前MySQL版本和支持的...

    MySQL技术内幕 InnoDB存储引擎.pptx

    InnoDB存储引擎是MySQL的默认存储引擎,具有高度可扩展性、高并发性、支持事务等特点。在InnoDB中,多版本并发控制(MVCC)机制实现了高并发访问。InnoDB的物理结构、内存结构、数据字典、索引体系、日志体系等方面...

    MySQL核心Innodb存储引擎浅析—事务系统

    ### MySQL核心Innodb存储引擎浅析—事务系统 #### 存储引擎介绍 在MySQL中,存储引擎是处理表的存储方式的核心组件之一。不同的存储引擎提供了不同的特性,如事务支持、锁定粒度等。其中,MyISAM和InnoDB是最常用...

    MySQL逻辑架构-存储引擎-用户权限密码详解

    MySQL提供了两种级别的并发控制:服务器级和存储引擎级。在锁机制上,MySQL支持读锁和写锁,其中读锁是共享的,多个线程可以同时读取数据,而写锁是排他的,当一个线程对数据加上写锁后,其他线程不能进行读写操作。...

    MySQL数据库存储引擎探析.pdf

    除此之外,MySQL还提供了其他几种存储引擎,如NDBCluster适用于分布式环境,Maria是对MyISAM的升级版,Falcon是MySQL公司正在研发的事务性存储引擎,Memory引擎用于存储在内存中的临时表,Archive用于压缩存储日志,...

    简述MySQL的存储引擎以及各自的特点

    InnoDB 是 MySQL 最常用于事务处理的存储引擎,它提供了事务安全(ACID)特性,支持行级锁定,确保了数据的一致性和完整性。InnoDB 还支持外键,这使得它在实现复杂的数据库关系时非常有用。然而,因为这些高级功能...

    MySQL的存储引擎与日志说明1

    InnoDB存储引擎是MySQL的默认引擎,尤其在MySQL 5.5版本之后,它提供了强大的事务处理能力,支持ACID(原子性、一致性、隔离性、持久性)属性的事务,这意味着数据操作的完整性和一致性得到了保障。InnoDB还支持四种...

    MySQL数据库:存储引擎深入解析

    选择MySQL存储引擎时,应综合考虑以下几个方面: - **事务处理**:如果应用程序需要支持事务处理,例如回滚、保存点等,应选择 InnoDB。 - **并发控制**:InnoDB 支持行级锁定,适合高并发的写操作;而 MyISAM 使用...

    深入理解Mysql锁与事务隔离级别1

    《深入理解MySQL锁与事务隔离级别》 ...选择合适的存储引擎、锁类型和事务隔离级别,可以在保证数据安全的同时,最大化系统的并发处理能力。在实际应用中,应根据业务需求和性能指标,灵活调整这些设置。

    MySQL 核心引擎InnoDB-事务锁多版本分析

    MySQL数据库系统中InnoDB存储引擎是其核心组件之一,它支持事务处理、行级锁定以及外键等特性。针对InnoDB存储引擎中的事务、锁以及多版本并发控制(MVCC)机制进行深入分析,对于DBA来说,掌握这些知识点是必不可少...

    MySQL数据库事务隔离级别详解

    不过,MySQL的InnoDB存储引擎在“Repeatable Read”级别下通过MVCC(多版本并发控制)和间隙锁策略,可以避免幻读。而在MyISAM引擎下,幻读则可能出现。 4. 串行化(Serializable): 这是最高的隔离级别,完全避免...

    MYSQL存储引擎索引分析主从配置监控实战教程,锁分析,碎片管理,权限管理

    ### MySQL存储引擎索引分析主从配置监控实战教程,锁分析,碎片管理,权限管理 #### MySQL简介 MySQL是一款广泛使用的开源关系型数据库管理系统。它以其高性能、可靠性和易用性而闻名,适用于多种应用场景,从简单...

    mysql存储过程事务管理简析

    1,MySQL的事务支持 1)MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关: Sql代码 代码如下: MyISAM:不支持事务,用于只读程序提高性能 InnoDB:支持ACID事务、行级锁、并发 Berkeley DB:支持...

    cpp-SequoiaSQL一个分布式MySQL存储引擎

    SequoiaSQL是一个高度优化的分布式MySQL存储引擎,专为处理大规模数据和提供高性能而设计。这个项目的主要目标是扩展MySQL的能力,使其能够处理PB级别的数据,并在分布式环境中保持高可用性和可伸缩性。SequoiaSQL的...

Global site tag (gtag.js) - Google Analytics