我有一張大約200,000,000行的MYISAM表,其中包含主鍵 但我沒有索引。如何將數據從表中移動到另一個Mysql大表中
,我想創建一個索引,但probleme是,當我執行添加索引的請求表服務器被打破:
ALTER TABLE `db`.`table`
ADD INDEX `index_0001` (`col1` ASC);
因此,我會創建一個新表,並根據需要配置相應指標和舉措數據添加到新表並重命名它。
我想這MANIP:
INSERT INTO `db`.`table` (field1,field2,..) select field1,field2,....from eventdata limit 100000 offset 0 ;
INSERT INTO `db`.`table` (field1,field2,..) select field1,field2,....from eventdata limit 100000 offset 100000 ;
INSERT INTO `db`.`table` (field1,field2,..) select field1,field2,....from eventdata limit 100000 offset 200000 ;
.......... etc
但是當偏移變得更加然後100,000,000查詢行響應變得更慢。
有沒有其他解決方案?
tahnks
謝謝。 但我有3個字段的複合主鍵 – ALWAN
@ALWAN這個示例僅僅是一個示例,根本原因是表全部掃描,使用主鍵或其他的unque鍵是更好的方法:P –