mysql会将每个数据库(schema)会保存在数据目录下的一个子目录,且在子目录下创建一个和表同名的.frm文件保存该表的定义。可以使用 show table status like 'xxx’来查询表的相关信息。
InnoDB是mysql数据库的默认存储引擎(支持事务),他被设计来处理大量短期事务(短期事务大部分情况是正常提交,回滚少),他的性能和自动奔溃恢复功能,使其在非事务的场景中也很受欢迎。
MyISAM是mysql5.1之前的存储引擎,支持全文检索,压缩等,不支持事务和行级锁,不支持奔溃后的安全恢复,对于只读的,表比较小的可以选择。特征:加锁与并发,索引,延迟更新索引(先写入缓存区),压缩表,这个引擎可以压缩表,压缩后只能读,可以极大的提升读取性能,减少IO次数。但是其最大的问题在于不能加行锁。(日志性应用可以考虑使用MyISAM引擎,插入快,或是大部分情况都是只读的表也可以考虑这个引擎)