Performance MySQL

QUEST08

Erfahrenes Mitglied
Hi liebe Gemeinde,

ich habe einmal ein paar Grundsätzliche Fragen zum Thema Performance. Derzeit plane ich eine "eigene Community" zu programmieren.

Gerne würde ich folgendes wissen:

1. Ich gehe davon aus, dass ich so ca. 30 Tabellen haben werde. Teilweise sehr große und teilweise relativ kleine. Auf die großen, wie z.B. für das Profil des Nutzers (sämtliche Daten, ca. 30 Spalten) wird dementsprechend oft zugegriffen. Es werden aber auch in einer Tabelle sämtliche Logins gespeichert.

Ist es schlauer, für so große Tabellen jeweils auch nur eine Datenbank anzulegen, damit die zugriffe verschiedener Nutzer auf mehrere Datenbanken verteilt wird, oder ist das egal, weil ich durch die Select-Abfrage eh immer nur eine Tabelle anspreche?

2. Wie kann man grundsätzlich die Performance bei einer Select-Abfrage steigern? All kein "Select *" verwenden ist klar, aber kann ich die Abfrage noch schneller gestalten? Kann man z.B. "Select spalte 1, spalte 2" schreiben, obwohl auch spalte 3 benötigt wird? Ich glaube das nennt sich indexes? Gibt es sonst noch Tips, die mir helfen?

Vielen Dank und liebe Grüße!
 
Hi!

Nachdem ich auch eine Community programmiert habe, hier meine Erfahrung: Ich hab mit mehreren Datenbanken angefangen, und nach einem Jahr - mit sehr viel Aufwand - wieder alles in einer vereint. Denn (aus meiner Sicht) gibt es keinen Grund, mehere DBs zu haben. Du hast schlussendlich nur das Problem mit Abfragen, wenn du ständig aus mehreren DBs Daten holen musst.

Performancemäßig kann ich mich nicht beklagen. Wenn man die DB schön plant und nicht allzuviele JOINs etc. macht, passt auch die Geschwindigkeit.

lg,
Stephan
 
Zurück