drop table t1; truncate table t1; delete from t1; 区别?
1.按照作用划分:
drop table t1;
①删除所有表数据 删除整个表段(rm ibd)索引和数据,
②删除表定义 (rm frm,删除列,元数据也会被删除)
truncate table t1;
清空表段中的数据,保留表结构。
delete from t1;
逐行删除数据行,保留表结构。
2.按照性质划分
drop table t1;
属于物理性质删除。会释放磁盘空间。
truncate table t1;
属于物理删除,会释放磁盘空间。
delete from t1;
属于逻辑性质删除。只是标记删除,不会立即释放空间,所以会出现磁盘碎片
更多精彩内容,请关注微信公众号获取