mysql存储引擎
来源:互联网 发布:招远淘宝小镇 编辑:程序博客网 时间:2024/06/03 18:32
Mysql存储引擎概念
MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。(引自百度百科)
mysql创建表时可指定使用的数据库引擎(ENGINE=InnoDB)例如:
CREATE TABLE `goods` ( `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'id', `glname` varchar(64) COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '商品名称', `count` int(10) NOT NULL DEFAULT '0' COMMENT '数量', `status` tinyint(2) NOT NULL DEFAULT '1' COMMENT '状态,0:删除,1:正常', `createtime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '插入时间', PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='商品表';
show engines;
Engine:存储引擎的名称。
Support:存储引擎是否可用,YES可用,NO不可用,DEFAULT默认的存储引擎。
Comment:存储引擎的说明注释。
Transactions:是否支持事务。
XA:是否支持分布式事务处理。
Savepoints:保存点,是否支持部分事务回滚。
字段名称:
存储引擎介绍:
1.InnoDB(默认存储引擎)
√
√
√
Read Committed
X√
√
Repeatable Read
XX√
Serializable
XXX
MyISAM 这种存储引擎不支持事务和行级锁,有一个缺陷崩溃后无法安全恢复。
不支持外键。
如果数据存储到表中之后不需要进行修改,则适合使用MyISAM的压缩表,极大的减少了磁盘的占用,减少了磁盘I/O,提高查询效率。
MyISAM加锁是对整张表加锁,而不是针对行。(读取时,把读取到的所有的表加共享锁。写入时,把表加排它锁)
3. Memory
数据存储在内存,因此对于需要快速访问数据,并且重启以后数据丢失也没关系的数据,适合采用Memory引擎,用于保存中间产生的数据。表级锁,要求存储的数据格式大小是一定的,因此TEXT,BLOB数据类型没法使用。
4.CSV
可以将普通的CSV文件(逗号分隔)作为mysql数据库的表操作,但是不支持索引。
5.Archive
支持行级锁,只支持insert和select操作,Arichive引擎会缓存所有写并利用zlib对插入的行进行压缩。但每次select都需要进行全表扫描,因此适合日志分析或者数据收集这类需要扫描全表的操作,或者需要快速insert的情况。
6.Performance_Schema
Performance_Schema引擎用来收集数据库服务器的性能参数,用户不能创建存储该类型的表。
7.BlackHole
没有实现任何的存储机制,会丢弃掉所有插入的数据,服务器会记录下BlackHole表的日志,所以可以用于复制数据到备份数据库。
8. Federated
- 【MySQL】MySQL存储引擎
- 【MySQL】MySQL存储引擎
- mysql federated存储引擎引擎
- MySQL的存储引擎
- 1.5. MySQL存储引擎
- mysql存储引擎
- MySQL 存储引擎
- MySQL存储引擎
- Mysql的存储引擎
- MySQL存储引擎
- MySQL存储引擎-应用
- mysql存储引擎
- MySQL存储引擎认知
- MySQL存储引擎选择
- mysql archive存储引擎
- MySQL存储引擎
- Mysql数据库存储引擎
- mysql存储引擎比较
- 303. Range Sum Query
- EL表达式截取字符串
- Java使用JDBC将文本内容插入到数据库(七)
- jdk1.8对于HashMap碰撞处理的优化-引入红黑树
- 缓存redis常用命令1
- mysql存储引擎
- 消息队列使用的四种场景介绍
- .NET使用IKVM调用小米推送教程
- android.content.res.Resources$NotFoundException: String resource ID #0x4 报找不到资源id情况
- 2017福建省大学生程序设计竞赛--K题(错排,组合数学)
- Class.getResourceAsStream()和Class.getClassLoader().getResourceAsStream()用法
- java连接MySQL数据库及实现基本的增查
- 阿里云服务器出错500
- GAN 的 keras 实现