MySQL: Max. Tabellen pro Datenbank
Andavos
- datenbank
Hallo,
also ich hätte eine Frage zu MySQL.
Und zwar wie viele Tabellen passen ca. ein eine MySQL Datenbank.
Also ich habe mehrere Kunden die jeweils ca. 10 Tabellen benötigen.
Ab wie viel Tabellen sollte ich lieber die neuen Kunden in eine neue Datenbank speichern, damit die alte Datenbank nicht überlastet, bzw. weiterhin schnell und stabil läuft?
Also die Datenbanken wären dann alle auf dem gleichen Server.
Oder ist das egal?
Mir ist schon klar dass es vom Server abhängt, deswegen reichen mir erstmal Schätzwerte für einen normalen, neueren Server.
Auf dem Server sind bereits andere Datenbanken und andere Websites.
MFG
Andavos
Hello,
Und zwar wie viele Tabellen passen ca. ein eine MySQL Datenbank.
Das ist in der Praxis abhängig vom Arbeitsspeicher der Maschine, auf der der Server läuft.
Geh mal von minimal 256Byte permantentem Speicherbedarf pro Tabelle aus. Hinzu kommt dann ein Transferbuffer und ein Indexbuffer und ein Querybuffer wenn Du tatsächlich darauf zugreifst. Der ist einstellbar im Datenbankmodell der MySQL-Server-Ini.
Also ich habe mehrere Kunden die jeweils ca. 10 Tabellen benötigen.
Ab wie viel Tabellen sollte ich lieber die neuen Kunden in eine neue Datenbank speichern, damit die alte Datenbank nicht überlastet, bzw. weiterhin schnell und stabil läuft?
Also die Datenbanken wären dann alle auf dem gleichen Server.
Wahrscheinlich wären die Datenbanken eher "unter demselben Server" aber z.B. auf derselben Maschine (Filesystem). Inwieweit MySQL verteilte Datenbanken unterstützt entzieht sich momentan meiner Kenntnis.
Man sollte für jeden Kunden eine eigene Datenbank aufbauen, da sonst der eine die Tabellen des anderen sehen und ggf. verändern könnte. Und eigentlich sollte jeder Kudne eine eigene Zelle (vServer) haben.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo,
also die Kunden haben keinen direkt Zugriff auf die Tabellen.
Ich brauche die Tabellen um bestimmte Daten, die mir die Kunden liefern, zu speichern.
Über ein Scrip können die Kunden dann auf die Daten zugreifen.
Aber direkt auf die Datenbank bzw. Tabellen haben die kein Zugriff
MFG
Andavos
Hello,
also die Kunden haben keinen direkt Zugriff auf die Tabellen.
Ich brauche die Tabellen um bestimmte Daten, die mir die Kunden liefern, zu speichern.
Über ein Scrip können die Kunden dann auf die Daten zugreifen.
Aber direkt auf die Datenbank bzw. Tabellen haben die kein Zugriff
Und wenn ein "Enttarner" was gegen einen Kunden hat und sich tagelang mit MySQL-Injection beschäftigt und dann endlich Erfolg hat, dan sind gleich alle Teballen aller Kunden weg?
Die 1. Grundregel heißt: den Client immer hübsch doof halten
Die 2. Grundregel heißt: teile und herrsche
Die 3. Grundregel heißt: ? *lasst mal sehen, soll ich alles alleine machen?*
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo,
aber wenn man für einen Dienst 100 Kunden hat dann wird es teuer 100 Datenbanken anzulegen.
Denn jede Datenbank kostet Geld.
Aber gegen MySQL Injection sollte der Script hoffentlich resistent sein.
Denn PHP selber bietet schon einen Grundschutz und es werden alle Eingaben vorher gefiltert.
MFG
Andavos
Hello,
aber wenn man für einen Dienst 100 Kunden hat dann wird es teuer 100 Datenbanken anzulegen.
Wenn ich hundert Kunden habe, dann miete ich mir mindestens zwei vServer bei terions.de, die ich dann gegeneinander abgleichen lasse; regelmäßige Datensicherung nach meinen Vorgaben machen die sowieso als Zusatzservice. Und wenn ich die Regeln dafür nicht jeden Tag ändere, kostet das nur ein paar Cent im Monat extra.
Auf diesen vServern kann ich dann soviele Datenbanken einrichten, wie ich will. Und wenn ich will, kann ich auch mehrere DBMS parallel einrichten und starten.
Denn jede Datenbank kostet Geld.
Jede Nicht-Datenbank kostet Performance, da bei jedem Connect aus einem Script Handles auf sämtliche Tabellen aller Kunden (die ja in einer Datenbank wohnen) erstellt werden müssen.
Aber gegen MySQL Injection sollte der Script hoffentlich resistent sein.
Je mehr Scripte, desto mehr steigt die Wahrscheinlichkeit, dass mal eins mit Lücke dabei ist.
Die Devise heißt: teile und herrsche.
Denn PHP selber bietet schon einen Grundschutz und es werden alle Eingaben vorher gefiltert.
Du meisnt den Grundschmutz mit den magic_quotes_gpc, durch die viele Anwender dazu verleitet werden, welber gar nichts mehr zu machen?
Es gibt genug Idioten, die MySQL Injection selbst dort ausprobieren, wo sie überhaupt nie niemals nicht eine Wirkung hätte, nicht wahr S.W.? (Ich habe schon mit R.H. Kontakt aufgenommen! Du solltest hingehen zu ihm und beichten. Das erspart Dir weitere Konsequenzen meinerseits. Versprochen.)
Harzliche Grüße aus http://www.annerschbarrich.de
Tom