MYSQL在一个非常大的表中提高了性能

时间:2016-01-11 14:03:30

标签: mysql

我有这张桌子

CREATE TABLE llegada (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `emc_id` int(10) unsigned DEFAULT NULL,
  `cuartel_id` int(10) unsigned DEFAULT NULL,
  `fecha` datetime DEFAULT NULL,
  `nro_entrada` int(10) unsigned DEFAULT NULL,
  `valor` varchar(10) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ind_llegada` (`emc_id`,`cuartel_id`,`fecha`,`nro_entrada`)
) ENGINE=MyISAM AUTO_INCREMENT=18822145 DEFAULT CHARSET=latin1

此平板电脑有大约1亿条记录。并且为了提高性能,我想根据年份分为6个部分。但前两个问题发生我不知道该怎么做,不知道是否会修改对表的查询。我的想法是不必修改访问数据库的查询页面。 谢谢你的进步。

1 个答案:

答案 0 :(得分:0)

我从未听说过如何在不创建多个数据库的情况下对sql本身进行分区的方法。正如您所说,您需要修改查询页面或将信息存储到您网站上的各种数据库的方式,无论如何您应该这样做,因为这将浪费大量的处理时间。我很惊讶它还没有影响您的用户体验。