2012-04-23 4 views
0

org는 heklpdesk 티켓 시스템에 MySQL을 사용합니다. 거기에는 14k 행과 5.7GB의 테이블이있는 테이블이 있습니다! 다음은 테이블 구조입니다.MySQL 대단히 큰 테이블 크기

swticketposts

이 테이블이 너무 커질 수있는 이유는 어떤 아이디어, 나는 크기를 줄일 수있는 방법 어떤 생각? 수리를 실행하고 작업을 확인 및 최적화했으며 이전 기록을 삭제하려고했지만이 테이블을 너무 크게 만드는 것을 생각할 수 없습니다! 많은 중간 텍스트?

+0

5GB는 현대 표준에 따라 작지 만 큰 것은 아닙니다. –

+1

메일 본문을이 테이블에 삽입하고 있습니까? 그렇다면이 메일 크기가 메일 본문 텍스트로 인해 커집니다. –

+0

'contents' 열은 가능성이있는 범인처럼 보입니다. 'average (char_length (contents))'를 선택하기 위해 쿼리를 실행할 수 있습니까? – eggyal

답변

0

당신은 필요한 경우에만 ticketpostid에 따라 내용을 가져

ticketpostid | contents | 
_____________________________ 

같은 다른 테이블

내용 필드를 이동할 수 있습니다.

+0

그러면 5GB의 데이터를 다른 테이블로 옮길 것입니까? 데이터를 다른 테이블로 옮기는 것만큼이나 큰 차이를 만들 것이라는 의심. – Namphibian

+0

성능이 향상됩니다. –

+3

중간 텍스트 (blob) 열은 MySQL에 포인터 (9-12 바이트)로 저장됩니다. 실제 블롭은 테이블 데이터 외부에 저장됩니다. 쿼리에서 blob 열을 참조하지 않는 한 거기에 열이있는 것과 눈에 띄는 차이가 없어야합니다. – Ami