mysql speicherverbrauch

  • hallo ihr!

    ich habe mir jetzt ein neues forum zugelegt, das mysql als speicher nutzt und ich wollte mal fragen wie viel speicher so ein forum im durchschnitt braucht
    also ich hätte 15-20 gb nur für das forum zur verfügung.. wie viele beiträge würden sic da ungefähr ausgehen? wieviel speicherverbrauch hat zb dieses forum?

    thx
    greetz

  • Ein grosser Teil des Speichers wird für Attachements gebraucht werden.

    Die Foren inkl. Threads und Posts etc. verbraucht nicht so viel.
    Ich schätze dieses Forumauf ~250MB (ca. 1000 Zeichen pro Post)
    Die Attachements kann man schwer schätzen. würde aber sagen etwa 1GB

    Insgesamt 1.26 GB inkl phpBB :D
    Wer kanns bestätigen?

    • Offizieller Beitrag

    Das Forum hier benötigt derzeit knapp 300 MB für die Datenbank und nochmals etwa 300 MB für den Rest zb Attachements, Forenscript und Avatare usw.

    Hält sich also in Grenzen :D

    Ps: Traffic im Monat etwa 20 - 25 GB

  • wieviele datenbank zugriffe müssten eig sein damit die datenbank überlastet is (mysql) ? und wie is sowas möglich die zu überlasten?

  • Natürlich ist das möglich, dass passiert unter meist entweder wenn es 1) zuviele unnötige Anfragen gibt und/ oder eine sehr große Anzahl von Usern das Forum stürmt. 2) wenn die hardware schlecht ist, also die Server schlecht auszulasten sind und mit zu vielen Besuchern nicht mehr klar kommen 3) bei Anfragen, wo die maximale Anzahl an select anfragen überstiegen wird, die Anfrage wird abgebrochen (ist aber durch die Programmierung bedingt)

    Sämtlicher Code erhebt keinen Anspruch auf syntaktische Korrektheit geschweige denn Ausführbarkeit und ist für die Implementation außerhalb der Beispiele nicht geeignet.
    [Blockierte Grafik: http://www.snippr.de/social/img/logo.png]
    Kein Support für kommerzielle Scripts | Kein kostenloser Support via ICQ

  • und wie kannman die maximalanzahl an SELECT aufrufen rauskriegen?

    ich hab nälich uf einer meiner dynamischen seiten abfragen in denen 2 verschiedene datenbanken und 3-4 verschiedene tabellen abgefragt werden.. wie viele user dürften da gleichzeitig zugreifen bei guten servern?

  • wenn du dauernd eiene neue Verbindugn zur Datenbank aufbaust ohne die alte zu schliessen ;)

    Man sollte versuchen mit weniger als 5 Select bei mittleren und 15bei komplexen Anwendungen auszukommen (pro Seite).

    Am lastigsten sind die Befehle, die eine Berechnung voraussetzen (Datum usw), aber das sollte nicht weiter auffallen.

    Bevor dein Server den Geist ausgibt merkst du dass du upgraden/code-cleaning sollst wenn du dir die Statistik der auf die Festplatte ausgelagerten Befehlse ansiehst -die sollte in einer Rate von max. 5/100 sein. (meine ist zirka 1/250).

    MySQL ist recht RAM-lastig und sobald deine Abfragen ueber eine gewisse Anzahl von Tabellen gehen solltest du unbedingt dafuer sorgen genug RAM zrei zu haben. Raptor-Festplatten sind zudem auch noch gut ;)

  • also ich habe pro seite mindestens 6 SELECT's.. allerdings immer auf die selbe tabelle lediglich das ORDER BY ändert sich! kann die vielen SELECT aufrufe umgehen irgenwie, wenn ich eh nur das ORDER BY ändern muss?

    achja und könnte man SELECT und UPDATE in einen query kombinieren? also als erstes aus einer tabelle einen wert holen und diesen dann zB um 1 inkrementiert per UPDATE in die selbe tabelle wieder reinschreiben?

    thx 4 help

  • Zitat

    also ich habe pro seite mindestens 6 SELECT's.. allerdings immer auf die selbe tabelle lediglich das ORDER BY ändert sich! kann die vielen SELECT aufrufe umgehen irgenwie, wenn ich eh nur das ORDER BY ändern muss?

    und kann man denn solche selects zusammenfassen?

  • nein,
    aber du kannst ein einmaliges "order by" ueber php neu ordnen, was aber nur von Vorteil ist wenn die Datenbank extern ist, da ansonsten die Response-Time in etwa die gleiche sein wird.

    Ich frag mich nur, ob es wirklich von Vorteil ist wenn dien Script nur noch 0.0009 statt 0.001 Sekunden braucht... MySQL ist fast nicht to zu kriegen solange dein Server halbwegs was taugt ;)

  • aso okay ^^ naja es geht mir nicht um die ausführungszeit! die passt eh, aber ich will eben verhindern dass zu viele selects auftreten

    also wie viele user müssten gleichzeitig auf der seite sein damit die datenbank überlastet ist? wenn es ca. 6-14 select-aufrufe gibt?

  • Wenn eine abfrage ein paar millisekunden dauert is die warscheinlichkeit das 100 user ganz gleichzeitig auf die mysql zugreifen relativ gering...

    Ich würd mir nicht all zu viele Gedanken darüber machen...