幾百萬的數據,mysql快速高效創建索引



 有一個問題,一張表有3百萬條記錄,隨着時間的增加,記錄量會更多,此時查詢速度很慢。在創建此表前沒有未相應字段添加索引,所以此時需要爲表添加索引。但是因爲數據量大的原因,索引添加不成功,想了很多辦法,終於在短時間內解決了。

總的思想就是,將數據導出,創建索引,然後將數據導回。


  辦法如下:

  1、進入mysql界面。mysql -uroot -hlocalhost -plovelive gm;

  2、導出相應表的數據。select * from tab into outfile 'tab.txt'; 此處tab.txt文件在mysql的data目錄裏

  3、刪除相應表的數據,並置第一條記錄爲0。truncate tab;

  4、創建索引。create index IDX_NAME using BTREE on tab (col);

  索引的方式有:BTREE、RTREE、HASH、FULLTEXT、SPATIAL

  5、導入文件到相應表。load data infile '/mysql/data/tab.txt' into table tab;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章