InnoDB1

作者: nuptStone | 来源:发表于2018-08-08 19:31 被阅读0次

    create table(

    )engine= Engine_name

    key:

    好处:

    • crash recovery提交改变,undo 未提交
    • 主键自动做索引,where,order,group,join快

    实践

    • 自增列和频繁查询做主键
    • join列加外键
    • 关闭自动提交set autocommit=1;
    • 将多个dml加入事务,start transaction 和commit
    • 不要使用lock tables,准备更新用select ... for update
      [http://chenzhou123520.iteye.com/blog/1860954 ]

    ACID

    • 原子性 事务 commit,rollback
      -一致性 灾难保护 doublewrite buffer,crash recovery
      -隔离性 事务隔离等级 SET ISOLATION LEVEL
      -持久性

    MVCC

    link1
    link2
    link3
    innodb为每行增加3个字段:

    • DB_TRX_ID:最后增删改行的事务ID
    • DB_ROLL_PTR:回滚指针,指向undo log
    • DB_ROW_ID:新行加入,单调增加

    undo log分为insert undo log和update undo log

    SQL删除不是物理删除

    相关文章

      网友评论

          本文标题:InnoDB1

          本文链接:https://www.haomeiwen.com/subject/znesnxtx.html