MySQL存储引擎

来源:互联网 发布:linux 如何安装idea 编辑:程序博客网 时间:2024/06/14 22:41
存储引擎:存储数据,查询数据的技术
每种存储引擎使用不同的存储机制,索引技巧,锁定水平,最终提供不同的功能
MySQL支持的存储引擎:
-MyISAM:存储限制可达256TB,支持索引,表级锁定,数据压缩
-InnoDB:存储限制为64TB,支持事务和索引,行级锁定
-Memory(存储在内存中)
-CSV
-Archive

设置存储引擎
修改MySQL配置文件:default-storage-engine = engine
CREATE TABLE table_name(
......
)ENGINE=InnoDB=...
ALTER TABLE table_name ENGINE[=]engine_name

并发控制:当多个连接对记录进行修改时保证数据的一致性和完整性
通过锁来控制:
共享锁(读,在同一时间段内多个用户可以读取同一个资源,在读取过程中数据不会发生任何改变)
排他锁(写,在任何时候只能有一个用户写入资源,当进行写琐时会阻塞其他的读和写)
锁颗粒:
表锁(开销最小的策略)
行锁(开销最大的策略)

事务:保证数据库的完整性
事务的特性ACID
原子性(Atomicity)
一致性(Consistency)
隔离性(Isolation)
持久性(Durability)

外键:保证数据的一致性策略

索引:对数据表中的一列或多列的值进行排序的一种结构

0 0