Kan het zijn dat mysql erg traag is als je goed gevulde text-velden hebt? Ik heb nu 14.000 record met een x aantal simpele velden en een text-veld met gemiddeld 8 kb per record aan informatie.
Een drop-index mét het text-veld duurt 155 seconden en als ik het veld weg-gooi duurt het maar een seconde.
Een simpele query als "SELECT * FROM `klantkaart` LIMIT 14147 , 30" duurt met het gevreesde text-veld 11 seconden en zonder 0,03 seconden.
(een query op een heel specifiek record gaat in beide gevallen even snel)
- Moet ik deze teksten in een losse tabel opslaan?
- Moet ik mysql op linux draaien i.p.v. win2k?
- Moet ik een ander veld-type gebruiken i.pv. TEXT?
- Moet ik een ander tabel-type gebruiken?
Of moet ik meer info geven?
Alvast bedankt
Een drop-index mét het text-veld duurt 155 seconden en als ik het veld weg-gooi duurt het maar een seconde.
Een simpele query als "SELECT * FROM `klantkaart` LIMIT 14147 , 30" duurt met het gevreesde text-veld 11 seconden en zonder 0,03 seconden.
(een query op een heel specifiek record gaat in beide gevallen even snel)
- Moet ik deze teksten in een losse tabel opslaan?
- Moet ik mysql op linux draaien i.p.v. win2k?
- Moet ik een ander veld-type gebruiken i.pv. TEXT?
- Moet ik een ander tabel-type gebruiken?
Of moet ik meer info geven?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| # # Tabel structuur voor tabel `klantkaart` # CREATE TABLE `klantkaart` ( `id` int(20) NOT NULL auto_increment, `extid` varchar(15) NOT NULL default '', `omschrijving` varchar(128) NOT NULL default '', `telefoonnr` varchar(15) NOT NULL default '', `postcode` varchar(6) NOT NULL default '', `cpnaam` varchar(64) NOT NULL default '', `actie` varchar(10) NOT NULL default '', `plaats` varchar(64) NOT NULL default '', `afspraaktijd` datetime NOT NULL default '0000-00-00 00:00:00', `afspraaktijd2` varchar(25) NOT NULL default '', `afspraakstop` datetime NOT NULL default '0000-00-00 00:00:00', `vertegenwoordiger` varchar(5) NOT NULL default '', `xml` text NOT NULL, PRIMARY KEY (`id`), KEY `vertegenwooriger` (`vertegenwoordiger`), KEY `afspraaktijd` (`afspraaktijd`), KEY `extid` (`extid`), KEY `afspraakstop` (`afspraakstop`), KEY `actie` (`actie`), KEY `omschrijving` (`omschrijving`), KEY `telefoonnr` (`telefoonnr`), KEY `postcode` (`postcode`), KEY `plaats` (`plaats`) ) TYPE=MyISAM COMMENT='Bevat alle klantkaarten' AUTO_INCREMENT=14178 ; |
Alvast bedankt