码迷,mamicode.com
首页 > 数据库 > 详细

MySQL存储引擎

时间:2017-03-31 22:17:15      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:数据库软件   insert   engines   mysql   update   

存储引擎:不同的存储引擎可以给数据库带来不同的功能和性能。

查看当前数据库软件支持哪些存储引擎
   mysql> show engines;

在mysql 5.5及以后的版本中,默认的存储引擎是InnoDB,而在5.5之前,默认为MyISAM引擎

  1. MyISAM引擎
    MyISAM存储引擎注重速度,但是不支持事务、不支持外键等。
    MyISAM存储引擎的目录结构   

     .frm:存储的是表结构
     .MYD:存储的是表的数据
     .MYI:存储的是表的索引
         

  2. InnoDB存储引擎:支持事务、支持行级锁、支持外键

    该存储引擎在数据库目录下仅会存放表的结构
    表的数据存放在/data/mysql目录下的ibdata1文件中

    5.6里面索引也存在数据库目录下(.ibd)

    InnoDB支持事务:dml操作(insert、update、delete)
        事务满足四个特性:ACID
        1、A——Atomicity 原子性
           一个事务是一个整体,它里面的所有操作要么都做,要么都不做,不可再分割。
        2、C——Consistency 一致性
           事务开始前和结束后,数据库的完整性约束是一致的
        3、I——Isolation 隔离性、独立性
           两个事务之间是互不相干的
        4、D——Durability  持久性
           事务完成之后,对数据库的所有的更改都会持久的保存在数据库中,不会被回滚。
           
    正常来说:事务是可以回滚和提交的。 

    事务结束的标志:
       1、明确执行commit提交,表示确认更改
       2、明确执行rollback回滚,表示取消所有更改
       3、遇到ddl语句,自动提交(create、alter、drop、truncate)
       4、正常退出,自动提交
       5、异常退出,自动回滚 

  3. memory存储引擎:数据存放在内存中,重启服务之后,数据丢失,一般用于临时表。

MySQL存储引擎

标签:数据库软件   insert   engines   mysql   update   

原文地址:http://11654930.blog.51cto.com/11644930/1912171

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!