什么是数据库引擎
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。
不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。
现在许多不同的数据库管理系统都支持多种不同的数据引擎。
Mysql的核心就是存储引擎。
查看数据库引擎
show engines
注:Support中为DEFAULT的为默认的引擎;
为YES表示可以使用;
为NO表示不能使用。
四大引擎
1)ISAM引擎
是一个定义明确且历经时间考验的数据表格管理方法,它在设计之时就考虑到数据库被查询的次数要远大于更新的次数。
因此,ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源。
ISAM的主要不足之处在于,它不支持事务处理、不支持外来键、不能够容错、也不支持索引。
因为ISAM不支持事务,所以如果你的硬盘崩溃了,那么数据文件就无法恢复了。
所以如果你正在把ISAM用在关键任务应用程序里,那就必须经常备份你所有的实时数据,通过其复制特性,MySQL能够支持这样的备份应用程序。
2)MyISAM引擎
MyISAM是MySQL的ISAM扩展格式。
除了提供ISAM里所没有的索引(ISAM允许没有任何索引和主键的表存在,索引都是保存行的地址)和字段管理的大量功能,MyISAM还使用一
种表格锁定的机制(表级锁),来优化多个并发的读写操作,其代价是你需要经常运行OPTIMIZE TABLE命令,来恢复被更新机制所浪费的空间,否则碎片也会随之增加,最终影响数据访问性能。
MYISAM强调了快速读取操作,这可能就是为什么MySQL受到了WEB开发如此青睐的主要原因:在WEB开发中你所进行的大量数据操作都是读取操
作