2012-04-23 77 views
0

我們的組織使用MySQL他們heklpdesk售票系統,有一個表中存在有14K行ADN表是5.7GB!這是表格結構。MySQL的非常大的檯面尺寸

swticketposts

任何想法,爲什麼這個表可以長得這麼大了,我怎麼能減少它的大小有什麼想法?我已經開始修理,檢查和優化操作,並且我正在清除舊記錄的邊緣,但不能認爲是什麼讓這張桌子變得如此之大!很多中等文字?

+0

5 GB是中小型現代的標準,也不大:) – 2012-04-23 10:06:20

+1

你插入郵件正文以及在此table..if是,那麼這個表規模成長,由於郵件正文。 – 2012-04-23 10:09:52

+0

「內容」列看起來像是一個可能的罪魁禍首。你可以運行查詢來選擇「平均(char_length(內容))」嗎? – eggyal 2012-04-23 10:23:56

回答

0

您可以將內容場移動到另一個表

ticketpostid | contents | 
_____________________________ 

然後獲取基於僅在需要時ticketpostid內容。

+0

那麼他會將5GB的數據移動到另一個表中?由於您只是將數據移動到另一個表中,因此懷疑這會產生很大的差異。 – Namphibian 2012-04-23 11:14:12

+0

它會提高性能 – 2012-04-23 11:38:30

+3

中等文本(blob)列作爲指針存儲在MySQL中(9到12個字節)。實際的斑點存儲在表格數據之外。只要你沒有在查詢中引用blob列,那裏的列就不會有明顯的差異。 – Ami 2012-04-23 11:47:39