mysql創(chuàng)建數(shù)據(jù)庫 mysql加索引需要多長時(shí)間?
mysql加索引需要多長時(shí)間?32核心,30多G 內(nèi)存,一千萬的條目在時(shí)間上建立非聚集索引,用了 7 分鐘。一億的話,我這估計(jì)要大于70分鐘。聚集索引時(shí)間更長。 這個(gè)需要索引排序,建立分支索引復(fù)合B樹
mysql加索引需要多長時(shí)間?
32核心,30多G 內(nèi)存,一千萬的條目在時(shí)間上建立非聚集索引,用了 7 分鐘。一億的話,我這估計(jì)要大于70分鐘。聚集索引時(shí)間更長。 這個(gè)需要索引排序,建立分支索引復(fù)合B樹。一般海量數(shù)據(jù)不如新建立表,建立好索引,然后逐批導(dǎo)入數(shù)據(jù)。差勁點(diǎn)的機(jī)器,一億數(shù)據(jù)建立索引基本就是死機(jī)或是僵尸狀態(tài)。只能慢慢的等了,一天都不行,就上邊那方法。索引跟類型關(guān)系很大,一般定長字段比變長字段簡單,IO消耗小,時(shí)間節(jié)省,復(fù)合索引變長越多就越復(fù)雜,其次就是 一表多索引,這種情況 會(huì)衍生各種存儲(chǔ)索引結(jié)構(gòu),就更費(fèi)時(shí)間了。表有多少數(shù)據(jù)頁,多少文件,每頁多少槽位都會(huì)影響時(shí)間。
mysql中,創(chuàng)建索引很慢,怎么解決?
28萬條數(shù)據(jù)量不是很大,字段稍微有點(diǎn)多,如果不加WHERE條件的話,數(shù)據(jù)庫判定是查詢所有數(shù)據(jù)庫,而加了WHERE條件時(shí),數(shù)據(jù)庫判定要去詳細(xì)的查找某個(gè)數(shù)據(jù),所以速度自然會(huì)慢,建立索引可以解決您的問題;
CREATEINDEX索引名ON表名(WHERE條件用到的列名,如有多個(gè)就以逗號分隔)
這次在去WHERE的時(shí)候就會(huì)快很多