如何修改MySQL数据库引擎为INNODB
修改MySQL数据库引擎为INNODB:
1、首先修改my.ini,在[mysqld]下加上:default-storage-engine=INNODB2、用sql语句修改已经建成表的引擎:altertable待改表明type=InnoDB;
浅谈MySQL存储引擎选择InnoDB与MyISAM的优缺点分析
MyISAM引擎设计简单,数据以紧密格式存储,所以某些读取场景下性能很好。
但是MyISAM最典型的还是表锁问题,这样会导致长期处于"Locked"状态。而且数据恢复时间长,无事务等问题或短板。
虽然5.1之前MyISAM的读比Innodb快很多,但是在5.1之后,默认引擎已经变为Innodb。
Innodb读写有很大的提高,采用MVCC来支持高并发,针对行加锁,是使用最广泛的存储引擎。
官方建议尽量将MyISAM都换为Innodb。
mysql的innodb存储引擎下,主键默认是按照自增的顺序排的吗
默认楼主使用的是InnoDB存储引擎尽量使用业务无关的自增列作为主键,主要原因:
1. InnoDB数据是按照主键聚簇的,数据在物理上按照主键大小顺序存储,使用其他列或者组合无法保证顺序插入,随机IO(SSD的话影响不大)导致插入性能下降2.所有二级索引都存储了主键的,采用二级索引查询,首先找到的主键,然后通过主键定位数据,如果直接使用组合字段作为主键,会导致二级索引占用空间较大,bufferpool中存储的记录数较少,影响性能,而自增列只占4或者8个字节,代价非常小
还没有评论,来说两句吧...