mysql大數(shù)據(jù)量下修改表結(jié)構(gòu)的方法
當(dāng)表數(shù)據(jù)量是幾百萬條以上時,如果要修改原表結(jié)構(gòu),比如給原表加個列字段,同時在這個表上加索引。
請勿使用以下方式:
原因是:
經(jīng)過實際測試,表數(shù)據(jù)量是800多萬條,運(yùn)行上述語句時,幾個小時執(zhí)行不完。
正確方式:
1、創(chuàng)建一個新表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;
請勿使用以下方式:
alter table video_names add column type VARCHAR(255) NOT NULL, add index(type)
原因是:
經(jīng)過實際測試,表數(shù)據(jù)量是800多萬條,運(yùn)行上述語句時,幾個小時執(zhí)行不完。
正確方式:
1、創(chuàng)建一個新表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 小一敗涂地 閱讀(4770) 評論(1) 編輯 收藏 所屬分類: 數(shù)據(jù)庫(oracle、mysql、sql server等)相關(guān) 、性能調(diào)優(yōu)相關(guān)