碎片就是指:删除数据必然会在数据文件之中造成不连续的空白空间,而当插入新数据时,这些空白空间会被利用起来,但已造成数据的存储位子不连续,以及物理存储顺序和理论存储顺序不一致.
问:
1,delete,insert 会造成碎片,那update会不会也造成碎片?
2,用show table status 查看date_free的值大于0,表示有碎片.Myisam 存储引擎可以用optimize table tablename 来整理碎片,
(测试了下,确实可以把date_free的值变成0),但是对于innodb 该该如何整理碎片呢,用 alter table tablename engine=innodb 操作后date_free数据还是不能为0; 该如何整理innodb表的碎片呢?
3,myisam 和 innodb 这2个哪个类型更容易产生碎片,为什么?(个人觉得是innodb,基于它自增主键的原因).