ถ้ามีเวลาลง 5.5 เป็นเครื่องสำรองทดสอบ ฝากทดสอบ Partition table ได้หรือเปล่าครับ ดูว่า Performance ดีขึ้นหรือเปล่าน่ะครับ
ALTER TABLE opitemrece remove partitioning;
ALTER TABLE opitemrece DROP PRIMARY KEY;
ALTER IGNORE TABLE opitemrece MODIFY COLUMN vstdate DATE NOT NULL;
ALTER IGNORE TABLE opitemrece ADD PRIMARY KEY (hos_guid,vstdate);
ALTER TABLE opitemrece engine = innodb partition BY hash(to_days(vstdate)) partitions 300;
ถ้ายังไม่ดี ฝากทดสอบแบบนี้ด้วยครับ
alter table opitemrece engine = innodb partition by range columns (vstdate)
(partition yr_2000 values less than ('2001-01-01'),
partition yr_2001 values less than ('2002-01-01'),
partition yr_2002 values less than ('2003-01-01'),
partition yr_2003 values less than ('2004-01-01'),
partition yr_2004 values less than ('2005-01-01'),
partition yr_2005 values less than ('2006-01-01'),
partition yr_2006 values less than ('2007-01-01'),
partition yr_2007 values less than ('2008-01-01'),
partition yr_2008 values less than ('2009-01-01'),
partition yr_2009 values less than ('2010-01-01'),
partition yr_2010 values less than ('2011-01-01'),
partition yr_current_month values less than ('2011-01-31') ,
partition yr_2011 values less than ('2012-01-01') ,
partition yr_other values less than (maxvalue) );