mysql大數(shù)據(jù)量下修改表結(jié)構(gòu)的方法
當(dāng)表數(shù)據(jù)量是幾百萬條以上時(shí),如果要修改原表結(jié)構(gòu),比如給原表加個(gè)列字段,同時(shí)在這個(gè)表上加索引。
請(qǐng)勿使用以下方式:
原因是:
經(jīng)過實(shí)際測(cè)試,表數(shù)據(jù)量是800多萬條,運(yùn)行上述語句時(shí),幾個(gè)小時(shí)執(zhí)行不完。
正確方式:
1、創(chuàng)建一個(gè)新表tmp_names
2、執(zhí)行insert into tmp_names(****) select ***** from video_name;
3、刪除video_names
4、重命名tmp_name為video_names;語句為rename table tmp_names to video_names;
請(qǐng)勿使用以下方式:
alter table video_names add column type VARCHAR(255) NOT NULL, add index(type)
原因是:
經(jīng)過實(shí)際測(cè)試,表數(shù)據(jù)量是800多萬條,運(yùn)行上述語句時(shí),幾個(gè)小時(shí)執(zhí)行不完。
正確方式:
1、創(chuàng)建一個(gè)新表tmp_names
2、執(zhí)行insert into tmp_names(****) select ***** from video_name;
3、刪除video_names
4、重命名tmp_name為video_names;語句為rename table tmp_names to video_names;
posted on 2011-10-13 15:17 小一敗涂地 閱讀(4769) 評(píng)論(1) 編輯 收藏 所屬分類: 數(shù)據(jù)庫(oracle、mysql、sql server等)相關(guān) 、性能調(diào)優(yōu)相關(guān)