[x] Navigation

[x] Languages

[x] Design
Each user can view the site with a different theme.
Themes marked with a * also change the forum look.

[x] Downloads (Top)

PMs automatisch löschen lassen ???
Fragen und Diskussionen zu Modulen / Erweiterungen
Neues Thema eröffnen    Neue Antwort erstellen    Druckversion     Foren-Übersicht ›  Module & Blöcke

Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Joerg12
Investigator
Investigator

Offline Offline
Dabei seit: Aug 11, 2006
Beiträge: 42

BeitragVerfasst am: 20.06.2009 10:58
Titel: PMs automatisch löschen lassen ???

Hallo,

bei einer hohen Auslastung an Usern wächst natürlich auch die Anzahl der geschriebenen "Privaten Nachrichten" in der Datenbank kontinuierlich an.

Eine Begrenzung der maximalen Anzahl an PMs über die Foreneinstellungen hat ja irgendwie keine Auswirkung auf die gespeicherten PMs in der Datenbank.

Gibt es eine Möglichkeit, daß man z.B. sagt: Lösche mir alle PMs, die älter als xx Monate sind automatisch aus der Datenbank ?

Für entsprechende Hilfen wäre ich Euch sehr dankbar !

Ps: Gleiches gilt im Übrigen auch für die Statistikfunktion. Auch hier wächst die Datenbank nach einigen Monaten erheblich...

Gruss
Jörg.


Joerg12's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Dragonfly CMS 9.2.1, PHP 5.2.5, MySQL 5.0.18
Nach oben
Benutzer-Profile anzeigen
Joerg12
Investigator
Investigator

Offline Offline
Dabei seit: Aug 11, 2006
Beiträge: 42

BeitragVerfasst am: 22.08.2009 18:55
Titel: Re: PMs automatisch löschen lassen ???

Hallo,

warum interessiert sich keiner für die automatische Löschung von PM's ??? Meine Datenbank weist nun innerhalb 8 Monaten eine Anzahl von über 8.000 PM's auf... ich denke hier kann man erheblichen Speicherplatz durch Löschen älterer PM's einsparen.

Eigentlich würde es schon reichen, wenn der User sein Postfach aufruft und damit automatisch seine alten PM's gelöscht werden.

Gruss
Jörg.


Joerg12's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Dragonfly CMS 9.2.1, PHP 5.2.5, MySQL 5.0.18
Nach oben
Benutzer-Profile anzeigen
Poldi
Moderator
Moderator

Offline Offline
Dabei seit: Nov 14, 2004
Beiträge: 705

BeitragVerfasst am: 23.08.2009 02:11
Titel: Re: PMs automatisch löschen lassen ???

Naja, es liegt vielleicht daran, daß sich bei den Meisten einfach das Problem noch nicht gestellt hat.

Ich mein, ich hatte ne Seite laufen, da hatte ich schon 8000 User, geschweige denn PMs zwinker
Aber mit nem eigenen Server interessiert einen der Speicherplatz einfach ned (ok, ab 160 Gb wirds auch bei mir eng *g*)

Ich gucks mir mal an, ist aber, wenn ich das recht in Erinnerung hab, ziemlich vertrackt, da Zeitstempel, PM-Titel und PM-Inhalt in verschieden Tabellen in der DB abgelegt sind, und diese zum Löschen nach deiner Idee erst wieder entsprechend verknüpft werden müssen ...

_________________
gG,
Poldi
www.green-dragon.de (Dragonfly 9.2.1)
www.tampones.de (Dragonfly 9.2.1)
www.bfg-deggendorf.de (Dragonfly 9.2.1)
www.sexy-goths.de (Dragonfly 9.1.2.1)
www.gig-hunter.de (deceased)
www.green-dragon.net (Dragonfly CVS ... Testseite)

Poldi's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Linux/1.3.37/4.0.27-5.0.18/4.4.9-5.2.1/9.1.0.0-9.2.1
Nach oben
Benutzer-Profile anzeigen Website dieses Benutzers besuchen
Joerg12
Investigator
Investigator

Offline Offline
Dabei seit: Aug 11, 2006
Beiträge: 42

BeitragVerfasst am: 23.08.2009 09:21
Titel: Re: PMs automatisch löschen lassen ???

Hallo,

naja, es ist jedenfalls nicht gut, daß es keine Admin Funktion gibt, die vielen gespeicherten PMs irgendwie zu reduzieren....

Für die PM's gibt es 2 Tabellen:

1. cms_bbprivmsgs
2. cms_bbprivmsgs_text

In der 1. Datenbank ist der Zeitstempel (privmsgs_date).

Als Nachrichten ID nutzt die 1. Datenbank "privmsgs_id" und die 2. "privmsgs_text_id".

Dasselbe Problem sieht man ja auch in der Statistik-Datenbank "cms_stats_hour"... hier wird jede Stunde (!), in der ein Besucher auf der Seite war, 1 neue Zeile produziert...

Gruss
Jörg.


Joerg12's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Dragonfly CMS 9.2.1, PHP 5.2.5, MySQL 5.0.18
Nach oben
Benutzer-Profile anzeigen
Poldi
Moderator
Moderator

Offline Offline
Dabei seit: Nov 14, 2004
Beiträge: 705

BeitragVerfasst am: 23.08.2009 11:30
Titel: Re: PMs automatisch löschen lassen ???

Für die PMs sollte folgendes funktionieren :

Array:
DELETE cms_bbprivmsgs.*, cms_bbprivmsgs_text.*
FROM cms_bbprivmsgs, cms_bbprivmsgs_text
WHERE cms_bbprivmsgs.privmsgs_id = cms_bbprivmsgs_text.privmsgs_text_id
AND cms_bbprivmsgs.privmsgs_date < 1172793600;

Wobei du das Prefix (cms) und das Unixdate 1172793600 natürlich mit dem von dir gewünschten Datum ersetzen mußt.

(Mach ein Backup, ich übernehm KEINE Garantie, die Aktion kann dir die DB schrotten !)

Die Tabellen der Statistik kannst du getrost ab und an per phpmyadmin leeren, die interessieren eh kein Schwein, die Serverstats sind eh aussagekräftiger ....

_________________
gG,
Poldi
www.green-dragon.de (Dragonfly 9.2.1)
www.tampones.de (Dragonfly 9.2.1)
www.bfg-deggendorf.de (Dragonfly 9.2.1)
www.sexy-goths.de (Dragonfly 9.1.2.1)
www.gig-hunter.de (deceased)
www.green-dragon.net (Dragonfly CVS ... Testseite)

Poldi's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Linux/1.3.37/4.0.27-5.0.18/4.4.9-5.2.1/9.1.0.0-9.2.1
Nach oben
Benutzer-Profile anzeigen Website dieses Benutzers besuchen
Joerg12
Investigator
Investigator

Offline Offline
Dabei seit: Aug 11, 2006
Beiträge: 42

BeitragVerfasst am: 23.08.2009 21:40
Titel: Re: PMs automatisch löschen lassen ???

Hallo Poldi,

hmmm... so einfach scheint es nun doch nicht zu sein, da jede PM 2x existiert. Einmal für den Empfänger und einmal für den Absender...

Habe in dem Modul "Members_delete" folgende Funktion gefunden, die alle PMs eines einzelnen Users löscht.

PHP:
function delete_priv_msgs($user_id) {
global $user_prefix, $prefix, $db;

$priv_msgs = $db->sql_query("SELECT privmsgs_id FROM ".$prefix."_bbprivmsgs WHERE (privmsgs_from_userid=".$user_id." OR privmsgs_to_userid=".$user_id.")");

while($priv_msg = $db->sql_fetchrow($priv_msgs)) {

$result = $db->sql_query("DELETE FROM ".$prefix."_bbprivmsgs WHERE privmsgs_id=".$priv_msg['privmsgs_id']);

$result = $db->sql_query("DELETE FROM ".$prefix."_bbprivmsgs_text WHERE privmsgs_text_id=".$priv_msg['privmsgs_id']);
}
}

Gruss
Jörg.


Joerg12's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Dragonfly CMS 9.2.1, PHP 5.2.5, MySQL 5.0.18
Nach oben
Benutzer-Profile anzeigen
Poldi
Moderator
Moderator

Offline Offline
Dabei seit: Nov 14, 2004
Beiträge: 705

BeitragVerfasst am: 23.08.2009 23:05
Titel: Re: PMs automatisch löschen lassen ???

daß jede PM 2x vorhanden sein soll, wär mit neu ...

Für die Funktion in meinem vorherigen Psoting ist es auch vollkommen egal, die löscht alles, was vor dem angegeben datum in die beiden Tabellen kam, egal wie oft die PM vorhanden sein sollte ...

_________________
gG,
Poldi
www.green-dragon.de (Dragonfly 9.2.1)
www.tampones.de (Dragonfly 9.2.1)
www.bfg-deggendorf.de (Dragonfly 9.2.1)
www.sexy-goths.de (Dragonfly 9.1.2.1)
www.gig-hunter.de (deceased)
www.green-dragon.net (Dragonfly CVS ... Testseite)

Poldi's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Linux/1.3.37/4.0.27-5.0.18/4.4.9-5.2.1/9.1.0.0-9.2.1
Nach oben
Benutzer-Profile anzeigen Website dieses Benutzers besuchen
Joerg12
Investigator
Investigator

Offline Offline
Dabei seit: Aug 11, 2006
Beiträge: 42

BeitragVerfasst am: 18.10.2009 10:57
Titel: Re: PMs automatisch löschen lassen ???

Hallo Poldi,

beim Ausführen des Codes

PHP:
DELETE cms_bbprivmsgs.*, cms_bbprivmsgs_text.*
FROM cms_bbprivmsgs, cms_bbprivmsgs_text
WHERE cms_bbprivmsgs
.privmsgs_id = cms_bbprivmsgs_text.privmsgs_text_id
AND cms_bbprivmsgs.privmsgs_date <1240005600;

passiert rein gar nichts.

MySQL meldet nur "0 Zeilen gelöscht".

Irgendwas scheint an dem Befehl nicht zu stimmen...

Gruss
Jörg.


Joerg12's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Dragonfly CMS 9.2.1, PHP 5.2.5, MySQL 5.0.18
Nach oben
Benutzer-Profile anzeigen
Poldi
Moderator
Moderator

Offline Offline
Dabei seit: Nov 14, 2004
Beiträge: 705

BeitragVerfasst am: 18.10.2009 11:40
Titel: Re: PMs automatisch löschen lassen ???

Der Befehl stimmt, habs grad nochmal getestet ...

außer natürlich, du hast keine PNs in der Datenbank, welche vor dem Datum erstellt wurden, DANN werden 0 gelöscht ...

_________________
gG,
Poldi
www.green-dragon.de (Dragonfly 9.2.1)
www.tampones.de (Dragonfly 9.2.1)
www.bfg-deggendorf.de (Dragonfly 9.2.1)
www.sexy-goths.de (Dragonfly 9.1.2.1)
www.gig-hunter.de (deceased)
www.green-dragon.net (Dragonfly CVS ... Testseite)

Poldi's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Linux/1.3.37/4.0.27-5.0.18/4.4.9-5.2.1/9.1.0.0-9.2.1
Nach oben
Benutzer-Profile anzeigen Website dieses Benutzers besuchen
Joerg12
Investigator
Investigator

Offline Offline
Dabei seit: Aug 11, 2006
Beiträge: 42

BeitragVerfasst am: 18.10.2009 18:57
Titel: Re: PMs automatisch löschen lassen ???

Hallo Poldi,

ich habs auch mit mehreren Unix Zeitstempeln versucht, weil ich genau dieselbe Befürchtung hatte, aber es kommt leider immer dieselbe Meldung.

Gruss
Jörg.


Joerg12's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Dragonfly CMS 9.2.1, PHP 5.2.5, MySQL 5.0.18
Nach oben
Benutzer-Profile anzeigen
Poldi
Moderator
Moderator

Offline Offline
Dabei seit: Nov 14, 2004
Beiträge: 705

BeitragVerfasst am: 18.10.2009 19:02
Titel: Re: PMs automatisch löschen lassen ???

hmm ...

es kann aber nur am Zeitstempel liegen (oder eben, daß es garkeine PM gibt)

Habs jetzt mehrfach getestet, auch mit verschiedenen MySQL-Versionen (4 und 5), es funktioniert ...

_________________
gG,
Poldi
www.green-dragon.de (Dragonfly 9.2.1)
www.tampones.de (Dragonfly 9.2.1)
www.bfg-deggendorf.de (Dragonfly 9.2.1)
www.sexy-goths.de (Dragonfly 9.1.2.1)
www.gig-hunter.de (deceased)
www.green-dragon.net (Dragonfly CVS ... Testseite)

Poldi's server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS)
Linux/1.3.37/4.0.27-5.0.18/4.4.9-5.2.1/9.1.0.0-9.2.1
Nach oben
Benutzer-Profile anzeigen Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen    Neue Antwort erstellen    Druckversion    Foren-Übersicht ›  Module & Blöcke
Seite 1 von 1
Alle Zeitangaben sind in GMT + 1 Stunden



Gehe zu:  


Du kannst keine Beiträge schreiben.
Du kannst auf Beiträge nicht antworten.
Du kannst Deine Beiträge nicht bearbeiten.
Du kannst Deine Beiträge nicht löschen.
Du kannst an Umfragen nicht mitmachen.
Du kannst keine Dateien anhängen.
Du kannst keine Dateien herunterladen.




Interactive software released under GNU GPL, Code Credits, Privacy Policy