alte tabe 会导致事务中断。
方法1 使用 alter column 代替 modify column
方法2 不推荐。。
ALTER TABLE [ ALTER COLUMN / MODIFY COLUMN / CHANGE COLUMN ]
ALTER TABLE sakila.film MODIFY COLUMN rental_duration TINYINT(3) NOT NULL DEFAULT 5;
SHOW STATUS; 做了1000次读100次插入,拷贝了整个表到一个新表
ALTER TABLE sakifa.film ALTER COLUMN rental_duration SET DEFAULT 5;
直接修改.frm 文件而不涉及表数据。
快速创建MYISAM索引
ALTER TABLE test.load_data DISABLE KEYS;
----load data
ALTER TABLE test.load_data ENABLE KEYS;
这种方式对唯一索引是无效的,并且为载入的每一行检查唯一性,一旦索引超过了有效内存的大小,速度就会变慢。
more :
REPAIR TABLE 会重新创建索引,包括唯一索引
LOAD DATA FILE 并且使用的表示空表,MYSIAM 也可以通过排序来构造索引
注意可变长字符串,其在临时表和排序时可能导致悲观的按照最大长度来分配内存。
本文介绍了MyISAM表的一些优化方法,包括使用ALTER COLUMN代替MODIFY COLUMN避免事务中断、直接修改.frm文件来设置默认值,以及快速创建索引的方法。同时也提到了一些注意事项,如REPAIR TABLE会重建索引,LOAD DATA INFILE用于空表时可通过排序构建索引等。
3万+

被折叠的 条评论
为什么被折叠?



