MySQL存储引擎详解数据库
MySQL存储引擎
在创建表时可以指定表的类型,也就是表的存储引擎。表的存储引擎决定了数据如何存储及如何访问,还有事务如何存储。表的存储引擎在很大程度上影响着处理SQL语句所需的存储空间和速度。不同的存储引擎所具有的特点也有所不同,有些存储引擎在处理很多复杂的SELECT语句时非常适合,而另一些则在实现快速更新时比较适合。
MySQL运行为每个表定义存储引擎,如果默认,则会选择默认的存储引擎。在Windows平台下,默认存储引擎是InnoDB,在Linux平台下则是MyISAM.MySQL还支持其他很多种存储引擎可以使用show engines语句来查看,
主要存储引擎:MyISAM、InnoDB、MEMORY介绍:
MyISAM它不支持事务,也不支持外键,访问速度快,对事务完整性没有要求或者以SElECT INSERT为主的应用基本都可以使用这个引擎来创建表。每个MyISAM在磁盘上存储成3个文件文件的名字都以表的名字开始,扩展名指出文件类型。
.frm(存储表定义) .MYD(MYData,数据文件) .MYI(MYIndex,索引文件)可以把数据文件和索引文件放在不同目录。
InnoDBInnoDB存储引擎提供了具有提交,回滚和崩溃恢复能力的事务安全。但是对比MyISAM的存储引擎InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引
MEMORY存储引擎MEMORY存储引擎用存在内存中的内容来创建表。每个MEMORY表和一个磁盘文件关联起来。文件名由表的名字开始,并且由一个.frm的扩展名来指明它存储的表定义。
如名字所指明的,MEMORY表存储在内存中,且默认使用哈希索引。这使得它们非常快,并且对创建临时表非常有用。可是,当服务器关闭之时,所有存储在MEMORY表里的数据丢失。因为表的定义被存在磁盘上的.frm文件中,所以表自身继续存在,在服务器重启时它们是空的。所以在创建临时表时,推荐使用MEMORY存储引擎。
与MyISAM表一样,MEMORY表也不支持事务功能。
4185.html
mysql相关文章
- MySQL客户端配置:快速上手指南(mysql客户端配置)
- MySQL 授权之路:安全操作数据库(mysql授权)
- Linux操作MySQL数据库:快速、安全、高效(linux操作mysql)
- 解决MySQL远程访问授权问题(mysql登录远程数据库)
- JBoss与MySQL数据库连接实战(jboss连接mysql)
- MySQL数据库:实现编写脚本的简单步骤(mysql数据脚本)
- MySQL表中加密密码保护数据安全(mysql表中密码加密码)
- MySQL代理中间件:实现网络间的更高效交互(mysql代理中间件)
- Yum安装MySQL极速升级(yum升级mysql)
- MySQL数据分组统计:实现快速、高效的数据统计(mysql数据分组统计)
- 「MySQL前台工具推荐:让你的数据库管理更简单!」(mysql前台工具)
- MySQL 数据库更新值的简便方法(mysql更新值)
- 如何快速导入MySQL数据?(mysql导入)
- MySQL表结构合并:优化数据库性能的实用技巧(mysql表结构合并)
- MySQL 5.6 复制: 一种高效的数据库备份策略(mysql5.6复制)
- 如何查看MySQL数据库中的锁定状态?(mysql查看数据库锁)
- MySQL:掌握奇偶原则,优化数据库性能(mysql奇偶)
- C语言无法连接MySQL数据库(c 不能引用mysql)
- MySQL优化技巧如何高效地处理页和叶子节点(mysql一页和叶子节点)
- MySQL服务停止无法连接的解决方案(mysql一直停止服务)
- 轻松管理数据库使用MySQL Yog实现高效数据操作(mysql yog使用)
- MySQL 数据库查询多种查询方式解析(mysql不同的查询方式)
- 西西下载最新版MySQL数据库免费安装(mysql下载 西西)
- 掌握MySQL,需要多久上手呢(mysql上手多久)