Ser du frem til Baldur's Gate-remaket?
21. sep. 2011 13:00
Hey
Jeg har overtaget et større system, med mange SQL kald og knapt så mange indexes. Min vurdering, er at der er rigtigt meget at hente ved at få oprettet de rigtige indexes (dem, der kan betale sig at bruge tid på.)
Det vil tage mig et utal af timer at gennemgå alt, så derfor vil jeg lige høre jer Newz'ere, om I kender et værktøj, der kan foreslå indexes eller måske selv oprette dem udfra de kald, der sendes til basen?
Basen er MySQL 5.1 64 bit.
På forhånd tak!
22. sep. 2011 21:25
Jeg har droppet projektet og går i stedet igang med at køre en masse EXPLAINs.
22. sep. 2011 21:37
#1-2
Følgende burde bringe dig et godt stykke vej:
- find alle SELECT statements
- lav en liste med alle felter fra joins
- tilføj alle felter som bruges i where betingelser
- fjern alle primary keys
- fjern alle felter som allerede har index
22. sep. 2011 22:21
Mange tak. Det var den procedure, jeg havde tænkt mig at følge. Jeg ville bare helst undgå at lave for mange indexes for små tabeller, og der er RIGTIGT mange SQL statements fordelt på command strings, stored procedures etc. Hundreder.
Jeg kan forestille mig at det ville være muligt at lave et værktøj, som jeg nævnte i indlæg et, og derfor gættede jeg på at nogen havde lavet et. Det ville også være smart, hvis databasen selv kunne tilpasse sig.
Men jeg har ikke kunnet finde det.
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.