Page 1 of 1
Feature request: Datenbankwartung
Posted: Thu Dec 17, 2009 7:42 am
by Lux
Hallo,
ich möchte gerne einen feature request für die Erweiterung des Adminbereichs einbringen: Datenbankwartung
Darunter verstehe ich das Bereinigen von Tabellen, die im Laufe eines s9y-Lebens gefüllt aber nie bereinigt werden. Das kann bei Mieten eines Webspaces ein Platzproblem werden (auch in Richtung Backup) und bei wirklich grossen Tabellen selbst auf root-Server auch ein Performance-Problem.
Beispielsweise die Bereinigung der Spamblock und Visitor-Tabellen:
Code: Select all
DELETE
FROM serendipity_spamblocklog
WHERE timestamp < unix_timestamp( )- 90*24*60*60
DELETE
FROM serendipity_spamblock_htaccess
WHERE timestamp < unix_timestamp( )- 90*24*60*60
DELETE
FROM serendipity_visitors
WHERE unix_timestamp(concat(day,' ',time)) < unix_timestamp( ) - 60*24*60*60
Gruss
Dirk
Re: Feature request: Datenbankwartung
Posted: Thu Dec 17, 2009 12:51 pm
by onli
Hast du das vor kurzem gemacht, weißt also, welche Befehle/Tabellen das wären? Dann sollte das kein Problem sein.
Re: Feature request: Datenbankwartung
Posted: Thu Dec 17, 2009 1:31 pm
by Lux
onli wrote:Hast du das vor kurzem gemacht, weißt also, welche Befehle/Tabellen das wären? Dann sollte das kein Problem sein.
Ich habe die oben genannten identifiziert, da sie bei mir jeweils noch knapp sechstellige Anzahlen von Datensätzen hatten. Ich kann mir aber vorstellen, dass es noch andere gibt, die Plugin-abhängig sind.
Bei grossen Löschaktionen gilt es noch zwei Klippen zu umschiffen, die Laufzeit - es könnte zu einem PHP-Timeout kommen - und dass man hinterher noch einen
optimize table (MySQL) oder
vacuum (SQLite), für PostgreSQL habe ich das nicht griffbereit, machen muss.
Gruss
Dirk
Re: Feature request: Datenbankwartung
Posted: Mon Dec 21, 2009 6:30 pm
by onli
Habe das mal als Plugin versucht umzusetzen. Relativ stupide und genau gar nicht hübsch aufbereitet.
optimize table und vacuum wird aufgerufen, gegen php-timeouts habe ich mal ein set_time_limit(0) eingebaut. Das ggf wirklich in den Adminbereich einzubauen sollte jemand anders machen, ich kenn mich dafür zu wenig mit Datenbanken aus und hab kaum Testmöglichkeiten.
Gruß
Re: Feature request: Datenbankwartung
Posted: Mon Dec 21, 2009 7:38 pm
by Lux
onli wrote:optimize table und vacuum wird aufgerufen, gegen php-timeouts habe ich mal ein set_time_limit(0) eingebaut. Das ggf wirklich in den Adminbereich einzubauen sollte jemand anders machen, ich kenn mich dafür zu wenig mit Datenbanken aus und hab kaum Testmöglichkeiten.
Das Datenbank Know-How bringe ich mit, nur in php-Programmierung bin ich eine Niete, ich müsste mich erst komplett in php- und die s9y-Struktur einarbeiten und da stosse ich an ein Zeitproblem.
Das Plugin gucke ich mir "zwischen den Jahren" einmal an.
Gruss
Dirk
Re: Feature request: Datenbankwartung
Posted: Mon Dec 21, 2009 8:00 pm
by onli
Schau dir einfach die SQL-Statements an, also die Funktion cleanDB(). Der ganze Rahmen ist ja jetzt da, groß einarbeiten wirst du dich nicht mehr müssen

Re: Feature request: Datenbankwartung
Posted: Tue Dec 22, 2009 5:33 am
by Lux
onli wrote:Schau dir einfach die SQL-Statements an, also die Funktion cleanDB(). Der ganze Rahmen ist ja jetzt da, groß einarbeiten wirst du dich nicht mehr müssen

Das mache ich.
Danke!
Dirk
Re: Feature request: Datenbankwartung
Posted: Wed Apr 14, 2010 4:38 pm
by crypty
Hallo,
ich fände ein solches Datenbankbereinigungs-Plugin auch sehr hilfreich.
Wie weit ist denn das Plugin?
Gruß
Crypty
Re: Feature request: Datenbankwartung
Posted: Wed Apr 14, 2010 4:46 pm
by onli
Es gibt eine
neuere Version mit Tabellenauswahl und ein paar kleineren Anpassungen im Development-Forum.
Im Grunde warte ich auf Rückmeldungen, ob die SQL-Befehle so funktionieren (da ich sie nur bei mir auf MySQL getestet habe) und auf Meinungen dazu, was da noch rein soll. Die Crontab-Integration ist vermerkt, da hab ich mich nur noch nicht rangetraut.
Gruß