Mam tabelę, w której znajduje się ponad 2.500.000 rekordów.
jeżeli wykonuje zapytanie sprawdzające źródła odwiedzin:
SELECT `domain`, COUNT(`id`) AS `count` FROM `all_cms_entry` GROUP BY `domain` ORDER BY `count` DESC
to trochę długo się wykonuje:
Pokaż wiersze 0 - 3 ( 4 wszystkich, Wykonanie zapytania trwało 8.5397 sekund(y))Oto moja struktura bazy danych:
CREATE TABLE IF NOT EXISTS `all_cms_entry` (
`id` mediumint(8) UNSIGNED NOT NULL AUTO_INCREMENT,
`page` varchar(50) COLLATE utf8_polish_ci DEFAULT NULL,
`back` enum('0','1') COLLATE utf8_polish_ci DEFAULT '0',
`domain` varchar(70) COLLATE utf8_polish_ci DEFAULT NULL,
`referer` varchar(100) COLLATE utf8_polish_ci DEFAULT NULL,
`browser` varchar(30) COLLATE utf8_polish_ci DEFAULT NULL,
`platform` varchar(20) COLLATE utf8_polish_ci DEFAULT NULL,
`keyword` varchar(60) COLLATE utf8_polish_ci DEFAULT NULL,
`ip` int(10) UNSIGNED DEFAULT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `page` (`page`,`back`,`domain`,`browser`, `platform`, `keyword`,`ip`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=2621940 ;
Da się to jakoś przyśpieszyć?