一、mysql存储引擎概述 1、分类 包括:MyISAM、InnoDB、MEMORY等。其中InnoDB提供了事务安全表。其他存储引擎都是非事务安全表。 注意: 创建新表的时候如果不指定存储引擎,系统会指定默认的存储引擎,在5.5之前的默认存储引擎是MyISAM,5.5以后改为InnoDB.修改村粗引擎,可以在参数文件中设置default-table-type. 1) 查看当前的默认存储引擎: show variables like 'table_type'; 2) 查看当前数据库支持的存储引擎: SHOW ENGINES \G 或者 SHOW VARIABLES like 'have%' 2、修改存储引擎 alter table 表名 engine= innodb/myisam 3、myisam与innodb的区别 myisam 有存储限制,innodb支持64Tb, myisam 不支持事务安全,innodb支持b, myisam 支持表锁,innodb支持行锁, myisam 支持全文索引,innodb不支持, myisam 不支持集群索引,innodb支持, myisam 不支持数据缓存,innodb支持, myisam 不支持数据缓存,innodb支持, myisam 不支持索引缓存,innodb支持, myisam 数据可压缩,innodb不支持, myisam 不支持外键,innodb支持, myisam 批量插入速度高,innodb速度慢, myisam 数据可压缩,innodb不支持, 总结: myisam:不支持事务,不支持外键,优势是访问速度快,对事务完整性没有要求或者以select,insert为主的应用基本上都可以使用这个引擎来创建表。 说明: 每个myisam在磁盘上存储穿那个3个文件,其文件名都和表名一致,但扩展分别是: .frm 存储表定义 .MYD MYData 存储数据 .MYI MYIndex 存储索引 |
|