zoukankan      html  css  js  c++  java
  • 事务

    事务的ACID特性

      1、Atomic(原子性)

          所有语句作为一个单元全部成功执行或全部取消,不能出现中间状态

      2、Consistent(一致性)

          如果数据库在事务开始时处于一致状态,则在执行该事务期间将保留一致状态

      3、Isolated(隔离性)

          事务之间不相互影响

      4、Durable(持久性)

          事务成功完成后,所做的所有更改都会准确地记录在数据库中,所做的更改不会丢失

    事务的生命周期

      1、如何开启事务?

          begin / start transaction;  开启命令 

      2、标准的事务语句

          DML: insert update delete

      3、事务的结束

            commit  提交

            rollback      回滚(提交之后无法回滚)

    自动提交机制

      1、查看当前机制

            select @@autocommit; 默认打开

      2、在线修改参数

            set autocommit=0     (会话级别,只修改当前窗口)

            set global autocommit=0      (全局修改,关闭所有会话窗口然后再打开)

            永久修改: vim /etc/ny.cnf  autocommit=0    重启修改

      3、触发隐式提交的情况

            (1) begin  insert...  delete...  [commit]  begin      重复开启begin会隐式提交

            (2) begin  insert...  delete...  [commit]  set...            set命令会隐式提交

            (3)create...   DDL语句、DCL语句、锁定语句。 turncate table...   load data infile...   select for update...

    -------------------------------------------------------------------------------------------------------------------------------------------------------

    1、概念性名词

      redo log:                     重做日志


      ib_logfile0/ib_logfile1:                   默认50M,轮询使用


      redo log buffer:                    redo内存区域


      ibd:                        存储数据行和索引


      data buffer pool:                  缓冲区池,数据和索引的缓冲


      LSN:                         日志序列号  

         存储再磁盘数据页(ibd),redo log,data buffer pool,redo log buffer。 mysql每次数据库启动,

        都会比较磁盘数据页(ibd)和redo log的LSN,必须要求两者LSN一致,数据库才能正常启动


      WAL(write ahead log):              日志优先写的方式实现持久化   

        日志是优先于数据写入磁盘的


      脏页:   内存脏页,内存中发生了修改,没写入磁盘之前,我们把内存也称之为脏页


      CKPT:   checkpoint,检查点,就是将脏页刷写到磁盘的动作


      TXID:   事务号,Innodb会为每一个事务生成一个事务号,伴随个整个事务


         

      

  • 相关阅读:
    cpu capacity、task_util、cpu_util是如何计算的?
    QTI EAS学习之find_energy_efficient_cpu
    Linux内核进程调度overview(1)
    Ondemand和Interactive gonernor工作逻辑简述
    利用init进程监控底层节点的方法架构
    Sched_Boost小结
    SchedTune
    Cpusets学习
    搭建SpringCloud微服务框架:三、读取Nacos的配置信息
    搭建SpringCloud微服务框架:一、结构和各个组件
  • 原文地址:https://www.cnblogs.com/ruan-ruan/p/13967089.html
Copyright © 2011-2022 走看看