首页 > 数据库 >mysql的隔离级别以及存储引擎

mysql的隔离级别以及存储引擎

时间:2022-11-02 21:33:37浏览次数:38  
标签:存储 隔离 事务 应用程序 索引 引擎 mysql

一、隔离级别

1.可序列化:(SERIALIZABLE):如果隔离级别为序列化,则用户之间通过一个接一个顺序地执行当前的事务,这种隔离级别提供了事务之间最大限度的隔离。

2.可重复读(REPEATABLE READ):事务正在做的修改,不会读到,

3.提交读 :(READ COMMITTED)在事务处理期间,如果其他事务修改了相应的表,那么同一个事务的多个 SELECT 语句可能返回不同的结果。

4.未提交读(READ UNCOMMITTED):READ UNCOMMITTED 提供了事务之间最小限度的隔离。除了容易产生虚幻的读操作和不能重复的读操作外,处于这个隔离级的事务可以读到其他事务还没有提交的数据,如果这个事务使用其他事务不提交的变化作为计算的基础,然后那些未提交的变化被它们的父事务撤销,这就导致了大量的数据变化。

二、常见的MySql存储引擎

1.存储引擎的理解:Mysql中的数据用各种不同的技术存储在文件中,这些技术包括存储机制,索引机制,锁定水平等,通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。

2.你可以选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储你的信息、如何检索这些信息以及你需要你的数据结合什么性能和功能的时候为你提供最大的灵活性。

3.各种存储引擎的特性
并发性:某些应用程序比其他应用程序具有很多的颗粒级锁定要求(如行级锁定)。
事务支持:并非所有的应用程序都需要事务,但对的确需要事务的应用程序来说,有着定义良好的需求,如ACID兼容等。
引用完整性:通过DDL定义的外键,服务器需要强制保持关联数据库的引用完整性。
物理存储:它包括各种各样的事项,从表和索引的总的页大小,到存储数据所需的格式,到物理磁盘。
索引支持:不同的应用程序倾向于采用不同的索引策略,每种存储引擎通常有自己的编制索引方法,但某些索引方法(如B-tree索引)对几乎所有的存储引擎来说是共同的。
内存高速缓冲:与其他应用程序相比,不同的应用程序对某些内存高速缓冲策略的响应更好,因此,尽管某些内存高速缓冲对所有存储引擎来说是共同的(如用于用户连接的高速缓冲,MySQL的高速查询高速缓冲等),其他高速缓冲策略仅当使用特殊的存储引擎时才唯一定义。
性能帮助:包括针对并行操作的多I/O线程,线程并发性,数据库检查点,成批插入处理等。
其他目标特性:可能包括对地理空间操作的支持,对特定数据处理操作的安全限制等。

3.常见的

(1)MyISAM: 较高的插入、查询速度,但是不支持事务,表级别的锁定,也不支持外键,应用于只读或者以读为主的数据场景。

(2)InnoDB: 事务安全,行级别的锁定,支持外键

(3)Memory:在内存中存储所有数据,应用于对非关键数据由快速查找的场景。Memory类型的表访问数据非常快,因为它的数据是存放在内存中的,并且默认使用HASH索引,但是一旦服务关闭,表中的数据就会丢失

标签:存储,隔离,事务,应用程序,索引,引擎,mysql
From: https://www.cnblogs.com/juanzhi/p/16852536.html

相关文章

  • 我的Vue之旅 09 数据数据库表的存储与获取实现 Mysql + Golang
    第四期·将部分数据存储至Mysql,使用axios通过golang搭建的http服务器获取数据。新建数据库DROPDATABASEVUE;createdatabaseifnotexistsvue;usevue;JSONTO......
  • sqlDBX连接 Access 和 MySQL 数据库
     数据库开发,最常用的是Access桌面数据库,以及MySQL数据库下面总结一下sqlDBX连接Access以及MySQL数据库的使用方法===============================================......
  • MySql之json_extract函数处理json字段
    ​​MySql之json_extract函数处理json字段​​在db中存储json格式的数据,相信大家都或多或少的使用过,那么在查询这个json结构中的数据时,有什么好的方法么?取出String之后再代......
  • JAVA中的堆栈数据存储
    结论引用类型,总是储存在堆上(数组同样属于引用类型,只不过他是使用c实现的);基础类型,在方法中的局部变量储存在栈,对象实例中的实例字段则随对象一同存储在堆上;线程享有自......
  • mysql——partition by
    参考:https://www.cnblogs.com/xiaohuizhenyoucai/p/10636747.htmlhttps://www.jianshu.com/p/785f0edac47f partition by关键字是分析性函数的一部分,它和聚合函数(如......
  • MYSQL数据库之事务
    一、事务的ACID特性原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。一致性(Consistency):事务开始前和结束后,数据库的完整性约......
  • SQL SERVER 2008 存储过程使用记录 游标
    USE[LH]--数据库名称GOSETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROC[dbo].[SGMRAA123]--起的存储过程名称ASDECLARE@jintDECLARE@SqlStrNVARCHAR(MAX......
  • <1> csv 存储
    """方式一(scrapy下):"""scrapycrawl爬虫名-o保存的csv文件名"""方式二(常用):"""fromscrapy.exportersimportCsvItemExporterclassCsvPipeline:def__ini......
  • 解决Deprecated: mysql_connect(): The mysql extension is deprecated_F_hawk1
    解决方法1:禁止php报错display_errors=On改为display_errors=Offdisplay_errors=On改为display_errors......
  • 企业级自定义表单引擎解决方案(十六)--Excel导入导出
    Excel对于后端管理系统来说,永远都是绕不开的话题,开发Excel导入导出功能往往都比较麻烦,因为涉及到Excel导入模板制作、Excel表格数据与系统数据库表字段映射、Excel导入......