PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [S] DB Optimize für VMS 1.2



maniwelt
25.06.2008, 12:03
Hi,

wie der Titel schon sagt, suche ich den Addon "DB_Optimize" für VMS 1.2

Der DB_Optimize aus dem Download-Bereich ist für VMS 1.2 nicht programmiert, zumindest hab ich es so hier im Forum gelesen....

Kann einer weiter helfen ?

Xenon
25.06.2008, 12:11
Einfach umbauen , die includation von functions.lib löschen db_conect() löschen dann sollte es laufen

Roadstar
25.06.2008, 16:56
Jupp, funktioniert auch mit dem VMS 1.2.
Habe ich selbst bei mir im Einsatz.

Wenn du Hilfe brauchst, meld dich einfach bei mir.

LG,
Roadstar

maniwelt
25.06.2008, 18:47
Danke, habs hinbekommen, eigentlich sollte mir dies klar sein :cool:

LaSa67
25.07.2009, 01:02
Jupp, funktioniert auch mit dem VMS 1.2.
Habe ich selbst bei mir im Einsatz.

Wenn du Hilfe brauchst, meld dich einfach bei mir.

LG,
Roadstar

Hallo,
hab "db_optimize v2.1" installiert aber der Cron läuft nicht? Im Forum steht das man ihn für VMS1.2 umbauen müsste, kann mir einer evtl. sagen wie :der:
Danke und schönes WE

LaSa67
25.07.2009, 01:05
Hallo,
hab "db_optimize v2.1" installiert aber der Cron läuft nicht? Im Forum steht das man ihn für VMS1.2 umbauen müsste, kann mir einer evtl. sagen wie :der:
Danke und schönes WE

Der Code :

<?
// VMS-Addon: db_optimize v2.1
// COPYRIGHT BY - SEBASTIAN HOINKES -
// Weitergabe nur unveraendert erlaubt!
//
// Cron zum optimieren aller Tabellen der Datenbank, welche sich in der
// Datenbank befinden, die loeschung unnoetiger und abgelaufener IP-Sperren,
// die Bereinigung der User-Datenbank (sperren inaktiver User), loeschen ungueltiger
// und abgelaufenen Paidmails und deren Eintraege, sowie leeren der Buchungs-Tabelle.

// Am NAchfolgenden Abschnitt ggf. Einstellungen vornehmen
$buchlimit = '30'; // Buchungen welche aelter als XX Tage sind, aus Datenbank loeschen.
$inaktivlimit = '30'; // Wenn User laenger als XX Tage inaktiv ist, wird er mit Hinweis gesperrt (Wengier als 10 Tage nicht möglich!).
$sperrhinweis = 'Account wegen inaktivit&auml;t gesperrt! Bitte an den Support wenden!'; // Sperrhinweis bei Inaktivitaets-Sperrung!

// Die Funktionsdatei einbinden
@require_once ('../lib/functions.lib.php');

// Zur Datenbank verbinden
db_connect();

// Ungueltige Reload-Sperren loeschen
db_query ("DELETE FROM ´vms_reloads´ WHERE bis <= ".(time()));

// Tabellenanzahl und IDs auslesen
$result = mysql_list_tables($db_base);
$menge = mysql_num_rows($result);
for($x=0;$x<$menge;$x++){

// Tabellennamen holen
$table_name = mysql_tablename($result,$x);

// Tabelle optimieren
db_query ("OPTIMIZE TABLE `".$table_name."`");
}

// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Datenbank optimieren'");

// User, welche ueber 30 Tage inaktiv, sperren mit Hinweis
if($inaktivlimit < 10) { $inaktivlimit = 10; }
db_query ("UPDATE ".$db_prefix."_kontodaten SET status = 2, hinweis = '".$sperrhinweis."' WHERE last_active < ".(time()-($inaktivlimit*86400))." AND last_active > 0");

// Buchungen loeschen aud DB, wenn diese aelter als xx Tage sind
db_query ("DELETE FROM ".$db_prefix."_buchungen WHERE buchungszeit < ".(time()-($buchlimit*86400)));

// Alle ungueltigen Paidmails und deren Eintraege loeschen
db_query ("DELETE FROM ".$db_prefix."_paidmails_empfaenger WHERE gueltig < ".time());
db_query ("DELETE FROM ".$db_prefix."_paidmails_versendet WHERE gueltig < ".time());

db_close();
echo 'Dieser Cronjob stammt von Sebastian Hoinkes ';
echo '- <a href="http://www.cash4more.de'; echo '" target="_blank">www.Cash4more.de</a><br />';
die('<font color="green">Cron erfolgreich gelaufen!</font>');
?>


Danke im vorab.

eRaaaa
25.07.2009, 01:26
also an sich muss man da nicht viel umbauen so wie ich das auf dem erstne blick sehe...da du allerdings jetzt die crons anders aufrufst im vms 1.2 ist das include bzw require und db_connect() unnötig, d.h. probier mal folgendes:



<?
// VMS-Addon: db_optimize v2.1
// COPYRIGHT BY - SEBASTIAN HOINKES -
// Weitergabe nur unveraendert erlaubt!
//
// Cron zum optimieren aller Tabellen der Datenbank, welche sich in der
// Datenbank befinden, die loeschung unnoetiger und abgelaufener IP-Sperren,
// die Bereinigung der User-Datenbank (sperren inaktiver User), loeschen ungueltiger
// und abgelaufenen Paidmails und deren Eintraege, sowie leeren der Buchungs-Tabelle.

// Am NAchfolgenden Abschnitt ggf. Einstellungen vornehmen
$buchlimit = '10'; // Buchungen welche aelter als XX Tage sind, aus Datenbank loeschen.
$inaktivlimit = '60'; // Wenn User laenger als XX Tage inaktiv ist, wird er mit Hinweis gesperrt (Wengier als 10 Tage nicht möglich!).
$sperrhinweis = 'Account wegen inaktivit&auml;t gesperrt! Bitte an den Support wenden!'; // Sperrhinweis bei Inaktivitaets-Sperrung!



// Ungueltige Reload-Sperren loeschen
db_query ("DELETE FROM ´vms_reloads´ WHERE bis <= ".(time()));

// Tabellenanzahl und IDs auslesen
$result = mysql_list_tables($db_base);
$menge = mysql_num_rows($result);
for($x=0;$x<$menge;$x++){

// Tabellennamen holen
$table_name = mysql_tablename($result,$x);

// Tabelle optimieren
db_query ("OPTIMIZE TABLE `".$table_name."`");
}

// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Datenbank optimieren'");

// User, welche ueber 30 Tage inaktiv, sperren mit Hinweis
if($inaktivlimit < 10) { $inaktivlimit = 10; }
db_query ("UPDATE ".$db_prefix."_kontodaten SET status = 2, hinweis = '".$sperrhinweis."' WHERE last_active < ".(time()-($inaktivlimit*86400))." AND last_active > 0");

// Buchungen loeschen aud DB, wenn diese aelter als xx Tage sind
db_query ("DELETE FROM ".$db_prefix."_buchungen WHERE buchungszeit < ".(time()-($buchlimit*86400)));

// Alle ungueltigen Paidmails und deren Eintraege loeschen
db_query ("DELETE FROM ".$db_prefix."_paidmails_empfaenger WHERE gueltig < ".time());
db_query ("DELETE FROM ".$db_prefix."_paidmails_versendet WHERE gueltig < ".time());


echo 'Dieser Cronjob stammt von Sebastian Hoinkes ';
echo '- <a href="http://www.cash4more.de'; echo '" target="_blank">www.Cash4more.de</a><br />';
die('<font color="green">Cron erfolgreich gelaufen!</font>');
?>


achja, und nächstes mal , versuch doch mal anstatt: geht nicht, zu sagen WAS genau nicht geht :D fehlermeldung etc. sind immer hilfreich ^^

halk
25.07.2009, 01:40
hi

da du das vms1.2 hast gehe ich davon aus das der DBeintrag auch net klappt.

SQL txt einfügen in DB


INSERT INTO `vms_crons` ( `cron` , `laufzeit` , `datei` , `bezeichnung` )
VALUES ('ext_cron', '0', 'crons/db_optimize.php', 'Datenbank optimieren');


Die datei db_optimize.php ersetzen mit...


<?
// VMS-Addon: db_optimize v2.1
// COPYRIGHT BY - SEBASTIAN HOINKES -
// Weitergabe nur unveraendert erlaubt!
//
// Cron zum optimieren aller Tabellen der Datenbank, welche sich in der
// Datenbank befinden, die loeschung unnoetiger und abgelaufener IP-Sperren,
// die Bereinigung der User-Datenbank (sperren inaktiver User), loeschen ungueltiger
// und abgelaufenen Paidmails und deren Eintraege, sowie leeren der Buchungs-Tabelle.
// Am NAchfolgenden Abschnitt ggf. Einstellungen vornehmen
$buchlimit = '30'; // Buchungen welche aelter als XX Tage sind, aus Datenbank loeschen.
$inaktivlimit = '30'; // Wenn User laenger als XX Tage inaktiv ist, wird er mit Hinweis gesperrt (Wengier als 10 Tage nicht möglich!).
$sperrhinweis = 'Account wegen inaktivit&auml;t gesperrt! Bitte an den Support wenden!'; // Sperrhinweis bei Inaktivitaets-Sperrung!

// Zur Datenbank verbinden
db_connect();
// Ungueltige Reload-Sperren loeschen
db_query ("DELETE FROM ´vms_reloads´ WHERE bis <= ".(time()));
// Tabellenanzahl und IDs auslesen
$result = mysql_list_tables($db_base);
$menge = mysql_num_rows($result);
for($x=0;$x<$menge;$x++){
// Tabellennamen holen
$table_name = mysql_tablename($result,$x);
// Tabelle optimieren
db_query ("OPTIMIZE TABLE `".$table_name."`");
}
// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Datenbank optimieren'");
// User, welche ueber 30 Tage inaktiv, sperren mit Hinweis
if($inaktivlimit < 10) { $inaktivlimit = 10; }
db_query ("UPDATE ".$db_prefix."_kontodaten SET status = 2, hinweis = '".$sperrhinweis."' WHERE last_active < ".(time()-($inaktivlimit*86400))." AND last_active > 0");
// Buchungen loeschen aud DB, wenn diese aelter als xx Tage sind
db_query ("DELETE FROM ".$db_prefix."_buchungen WHERE buchungszeit < ".(time()-($buchlimit*86400)));
// Alle ungueltigen Paidmails und deren Eintraege loeschen
db_query ("DELETE FROM ".$db_prefix."_paidmails_empfaenger WHERE gueltig < ".time());
db_query ("DELETE FROM ".$db_prefix."_paidmails_versendet WHERE gueltig < ".time());
db_close();
echo 'Dieser Cronjob stammt von Sebastian Hoinkes ';
echo '- <a href="http://www.cash4more.de'; echo '" target="_blank">www.Cash4more.de</a><br />';
die('<font color="green">Cron erfolgreich gelaufen!</font>');
?>


jetzt sollte es klappen.




Mfg halk

LaSa67
25.07.2009, 04:13
Danke es funktioniert. Hat beim ersten Aufruf zwar eine Weile gedauert (viel Müll zu beseitigen :wink:) aber nun läuft der Cron. Kurioser Weise hat aber die DB Installation schon beim ersten Mal, (auch mit dem Eintrag "intervall") sprich mit der Urfassung, funktioniert.
Allen Danke und ein schönes WE :thumb:

elfenbein
12.08.2009, 12:17
Vielen Dank Leute,

aber bei mir funkts nur wenn ich das eingebe:

// Zur Datenbank verbinden
@require_once ('../lib/functions.lib.php'); (diese Zeile dazu)
db_connect();

LG Elfenbein

eRaaaa
12.08.2009, 12:21
Vielen Dank Leute,

aber bei mir funkts nur wenn ich das eingebe:

// Zur Datenbank verbinden
@require_once ('../lib/functions.lib.php'); (diese Zeile dazu)
db_connect();

LG Elfenbein

hast du vllt NICHT das vms 1.2? :D
(lies dir mal paar posts durch hier im thread ;D )

elfenbein
13.08.2009, 20:41
Servus,

ne solte schon das 1.2 sein. Es ist das ohne Klammanbindung aus dem Downloadbereich VMS 1.2 - also denke ich mal das es auch diese Version ist ?!?