Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Datenbank optimieren als Task
#1
Im Admin CP gibt es ja die Funktion "Datenbank optimieren".
Diese führe ich unregelmäßig von Hand aus, wann immer ich gerade daran denke.

Kann man dies auch über die Tasks (Aufgabenverwaltung) automatisieren ?




Vorgeschichte:
Heute hatten wir unseren ersten Ausfall in diesem noch jungen Jahr. Nur per Zufall hatte ich den Ausfall bemerkt und konnte mittels einer DB Optimierung über phpMyAdmin den Ausfall so kurz halten.





Info an Modi's & Admins: Durch Suchbegriffe wie optimizedb, optimieren, optimierung konnte ich leider kein ähnliches Thema für MyBB 1.4 finden.
MyBB ist die weltbeste Forensoftware u. 1000 mal besser als VB, WBB und phpBB !

Seit Sommer 2006 setze ich auf MyBB.
#2
Optimierung sollte eigentlich nichts mit Ausfällen zu tun haben. Optimize defragmentiert sozusagen die Datenbank. Wenn größere Mengen an Daten aus der Datenbank gelöscht wurden, wird auch belegter Speicher wieder freigegeben. Bei sehr großen Datenbanken kann das einen Unterschied machen, bei popeligen Winzdatenbanken wie sie in Foren üblicherweise eingesetzt werden, wirst du keinen Unterschied merken. Man kann das sicher auch als Task machen, ist ein Query wie jedes andere, aber wirklich lohnen tut es sich nicht.

Es gibt dann auch noch die Möglichkeit korrupte Tabellen zu reparieren. Das sollte aber eigentlich nie vorkommen. Wenn es bei dir doch auftritt, dann hat vielleicht dein Datenbankserver ein Problem...
#3
danke für deine schnelle Antwort [Bild: https://www.mybb.de/forum/images/icons/thumbsup.gif]


(06.01.2009, 00:40)frostschutz schrieb: Bei sehr großen Datenbanken kann das einen Unterschied machen, bei popeligen Winzdatenbanken wie sie in Foren üblicherweise eingesetzt werden, wirst du keinen Unterschied merken. Man kann das sicher auch als Task machen, ist ein Query wie jedes andere, aber wirklich lohnen tut es sich nicht.
Unsere Datenbank ist GZIP kompr. ca. 55 MB groß, tendenz steigend.
(etwas mehr als 8000 Mitglieder,13.000 Threads und 370.000 Beiträge)

Wegen Task: Das heisst ich müsste in admin/inc/tasks/ eine Datei Namens optimieren.php erstellen, ähnlich checktables.php ?
Leider weiß ich nicht was da alles vorkommen muss. Aber ich glaube eine Lösung wäre für sehr viele weitere MyBB'ianer hilfreich.




(06.01.2009, 00:40)frostschutz schrieb: Es gibt dann auch noch die Möglichkeit korrupte Tabellen zu reparieren. Das sollte aber eigentlich nie vorkommen. Wenn es bei dir doch auftritt, dann hat vielleicht dein Datenbankserver ein Problem...
Diese Möglichkeit lasse ich seit MyBB 1.4 stündlich durchlaufen (checktables.php), wobei dieser Task nur bei Meldungen hilft wie z.B "table is crashed and should repaired" (so oder ähnlich)


Ich muss zugeben, dass ich schon seit mindestens 5 Tagen nicht mehr die Datenbank optimiert hatte. Und heute war dann das Forum weiß und beim Versuch das Admin-CP aufzurufen kam eine Fehlermeldung wegen eines MySQL Problems "datacache" (so oder ähnlich)

Erst eine manuelle Optimierung über die Hintertür phpmyadmin brachte Abhilfe.
MyBB ist die weltbeste Forensoftware u. 1000 mal besser als VB, WBB und phpBB !

Seit Sommer 2006 setze ich auf MyBB.
#4
Ja, genau, das Checktables ist eigentlich das was bei Ausfällen durch defekte Datenbank hilft, aber das sollte man eigentlich nie brauchen, schon gar nicht stündlich. Ich würde diesen Task ganz deaktivieren.

55MB ist nicht viel (interessant wirds wenn für die Datenbank ein eigener Server abgestellt wird). Da sollte keine Optimierung notwendig sein. Bringen tut sie eh nur wirklich was wenn viele Daten gelöscht werden, in einem Forum kommen ja eher nur neue Sachen dazu, das ist eine völlig banale Anwendung für eine Datenbank. Die meisten Postings werden einmal geschrieben und dann nie mehr angefasst...

Ich fürchte daß du da irgendwo ein schwerwiegendes Problem hast, das du mit den häufigen Checks / Repairs / Optimierungen nur kaschierst. Es gibt keine Anwendung, die ihre Datenbank non-stop mit repair / optimize behelligen muss um zu laufen. Diese Dinge sollten nur in Ausnahmesituationen notwendig sein und dann manuell durchgeführt werden.
#5
Schau dir mal den Task "Tables Check" an. Der ist im MyBB schon enthalten, aber standardmäßig deaktiviert.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Task wird nicht richtig ausgeführt dämon 10 1.704 26.05.2010, 20:41
Letzter Beitrag: StefanT
  Datenbank optimieren aber wie? Alex76 6 968 11.12.2009, 14:43
Letzter Beitrag: Buster
Question task.php per Cronjob aufrufen? querschlaeger 3 1.055 20.09.2008, 01:26
Letzter Beitrag: Michael