我正在禁用鍵;批量加載數據;然後在myisam表上重建索引。然而, 最後一部分需要永遠,因爲它是MYSQL myisam使用keycache修復
Repair with keycache
,而不是維修的排序
這裏是我的變量,我有表約100萬條記錄,每行有一個整數主鍵,一個SMALLINT列和一個varchar(256)列。我的myisam_max_sort_file_size是500G,我懷疑指數的最大值大小會接近那個值。
mysql> show variables where variable_name like '%myisam%'; +---------------------------+----------------------+ | Variable_name | Value | +---------------------------+----------------------+ | myisam_data_pointer_size | 6 | | myisam_max_sort_file_size | 536870912000 | | myisam_mmap_size | 18446744073709551615 | | myisam_recover_options | OFF | | myisam_repair_threads | 1 | | myisam_sort_buffer_size | 4294967296 | | myisam_stats_method | nulls_unequal | | myisam_use_mmap | OFF | +---------------------------+----------------------+
我的機器有8GB的內存和250GB的存儲空間,爲什麼不用MYSQL進行排序修復?
可能的重複。看到MarkR的答案在這裏:http://stackoverflow.com/questions/1067367/mysql-how-to-avoid-repair-with-keycache – 2011-02-16 16:29:04
我已經讀了另一個線程,它沒有幫助我。我在/ tmp中有足夠的磁盤空間,這是我的mysql正在使用的 – user121196 2011-02-16 16:39:07