etkin bir yolu yoktur ben ...MySQL 5.1 Bölümleme
mysql> CREATE TABLE part_date3
-> ( c1 int default NULL,
-> c2 varchar(30) default NULL,
-> c3 date default NULL) engine=myisam
-> partition by range (to_days(c3))
-> (PARTITION p0 VALUES LESS THAN (to_days('1995-01-01')),
-> PARTITION p1 VALUES LESS THAN (to_days('1996-01-01')) ,
-> PARTITION p2 VALUES LESS THAN (to_days('1997-01-01')) ,
-> PARTITION p3 VALUES LESS THAN (to_days('1998-01-01')) ,
-> PARTITION p4 VALUES LESS THAN (to_days('1999-01-01')) ,
-> PARTITION p5 VALUES LESS THAN (to_days('2000-01-01')) ,
-> PARTITION p6 VALUES LESS THAN (to_days('2001-01-01')) ,
-> PARTITION p7 VALUES LESS THAN (to_days('2002-01-01')) ,
-> PARTITION p8 VALUES LESS THAN (to_days('2003-01-01')) ,
-> PARTITION p9 VALUES LESS THAN (to_days('2004-01-01')) ,
-> PARTITION p10 VALUES LESS THAN (to_days('2010-01-01')),
-> PARTITION p11 VALUES LESS THAN MAXVALUE);
Query OK, 0 rows affected (0.00 sec)
bu verilerin dolu Aşağıdaki örnek tablo Say ettim ve p11 bir 2011 bölüm takarak ve ardından p12 MAXVALUE yapmak istiyorum tüm tabloyu boşaltmadan ve yeniden yüklemeden bunu yapmak?
Bu harika çalışıyor. Bölümleme işlemini sizin için iyi buldunuz mu? –
Evet. MySQL 5.5'te oldukça lineer bir performansla bir tabloda 400 milyondan fazla satır var. Bu tür tabloları sorgularken dikkatli olmalısınız, böylelikle bölme budaması için sorguda yeterli ipucu olduğundan emin olun. – Dojo