delete与truncate的原理,insert into ..select ...锁,字符集
https://dev.mysql.com/doc/refman/5.7/en/truncate-table.html
truncate 与 delete 的区别?
truncate 1、 不能rollback, 隐式提交,会释放空间。 2、数据或者索引损坏,只要test.frm没有坏,也能truncate成空表。3、自增值重新从0开始。4、不能删除触发器的调用
delete 1 、可以rollback 2、不释放空间
#############################################
insert into b select * from a ; a表和b表加什么锁?
insert into b select * from a order by idx_name; a表和b表加什么锁?
insert into b select * from a order by 非索引列; a表和b表加什么锁?
insert into b select * from a;锁的信息及原理?
http://www.cnblogs.com/zhoujinyi/archive/2013/04/28/3049382.html
http://blog.csdn.net/qq_21033663/article/details/70230798
http://www.cnblogs.com/code-007/p/7729132.html
http://www.ywnds.com/?p=4949
情景一:insert into table1 ...select * from table2:table1扫描过的都加X锁, table2逐步锁(扫描一个锁一个),table2加IS锁
情景二:insert into table1 ...select * from table2 order by 主键:table1扫描过的都加X锁, table2逐步锁(扫描一个锁一个)table2加IS锁
情景三:insert into table1 ...select * from table2 order by 非索引列 :table1扫描过的都加X锁, table2表锁S。
#############################################
http://seanlook.com/2016/10/23/mysql-utf8mb4/