Ich möchte in meinem aktuellen Projekt eine Funktionale Einheit mehrfach verwenden. Und zwar habe ich in PHP eine Seite geschrieben, in der man sich als Gruppe organisieren kann (Forum, Galerien, etc.).
Du hast eine Nutzerverwaltung, Gruppen, Rechte, Sitzungen, "Inhalte" (Forum, Galerie etc.), gut.
Jetzt sollen jedoch mehrere Gruppen ermöglicht werden. Daher frage ich mich, ob es sinnvoller ist, in mySQL für jede Gruppe eine eigene Datenbank anzulegen, in der die zur Gruppe gehörigen Daten in den Tabellen gespeichert werden, oder ob alles in einer Datenbank liegen sollte und dort die Tabellen um ein Feld wie zum Beispiel gruppen_id erweitert werden sollte.
Nutzergruppen werden in Tabellen mit dem Namen "Nutzergruppen" gehalten, Nutzer in einer mit dem Namen "Nutzer", zusammengehörige Tabellen (Entitäten) werden in einer DB gehalten.
Es gilt der Satz, den schon der erste Kaiser kannte, "Divide et impera!"
Welche Variante ist performanter und sinnvoller?
Die Realität verstehen und nachbauen, schau mal i.p. Theorie in der Wikipedia nach ERM. Stell auf jeden Fall den Performancegedanken zurück und komme nicht mit zu vielen DB-Objekten (und auch nicht zu wenigen ;).