MySQLDumper-Board Forum Index Follow me on Twitter

Portal  •   Forum  •  Downloads  •  Profile  •  Search   •  Register  •  Log in to check your private messages  •  Log in  •  


 MySQLDumper pre-release Revision 315

Post new topicReply to topic
Author Message
JJT
Developer
Developer





Joined: 04 Nov 2006
Posts: 131


germany.gif

PostPosted: 2009-06-11, 06:22    (No subject) Reply with quoteBack to top

Hi Daniel,

ok, du hast es nicht anders gewolt ;-)

changelog
-auto_delete fixed (unabhänging von multipart)
-am ende zeilenumbruch (bei shell)
-automatisches Finden des Config-Pfad (windows??)
-autom. löschen fehlerhaft bei aufruf ausserhalb den cron verzeichnisses

annahmen
$cron_del_files_after_days und $max_backup_files_each werden nicht mehr benötigt (macht durchaus sinn ;-)
demzufolge kann die Function AutoDeleteDays gelöscht werden

offen
- crondump.pl per cgi: geht dann autofind config-path?

diff crondump.pl crondump380.pl
20,21c20
< #my $absolute_path_of_configdir="/home/www/*****/htdocs/admin/msd/work/config/";
< my $absolute_path_of_configdir="";
---
> my $absolute_path_of_configdir="/home/www/doc/****/mysqldumper.de/www/mysqldumper/work/config/";
136a136
>
140,159d139
< #try to guess path
< if($absolute_path_of_configdir eq "")
< {
< #get full path
< #regex from http://www.*****.org/?node_id=47035
<
< if ($0=~m#^(.*)\\#) {
< #windows
< $absolute_path_of_configdir = "$1"."work\\config\\";
< } elsif ($0=~m#^(.*)/# ) {
< #*nix
< $absolute_path_of_configdir = "$1"."work/config/";
< #} else {`pwd` =~ /(.*)/;
< # $absolute_path_of_configdir = "$1";
< }
<
< $absolute_path_of_configdir =~ s/msd\_cron//g;
< #print $absolute_path_of_configdir."\n";
< }
<
161d140
<
225,230c204,208
< #if($cron_del_files_after_days>0) {
< # PrintOut("Autodelete: search for backups older than <font color=\"#0000FF\">$cron_del_files_after_days</font> days ...");
< # find(\&AutoDeleteDays, $backup_path);
< # DeleteFiles (\@trash_files);
< #}
<
---
> if($cron_del_files_after_days>0) {
> PrintOut("Autodelete: search for backups older than <font color=\"#0000FF\">$cron_del_files_after_days</font> days ...");
> find(\&AutoDeleteDays, $backup_path);
> DeleteFiles (\@trash_files);
> }
275c253
< if ($html_output==0) { print "\nEnd of Cronscript\n"; }
---
> if ($html_output==0) { print "\nEnd of Cronscript"; }
911c889
< push(@filearr,"$fname|$file_databasename");
---
> push(@filearr,$fname);
916,922c894,898
< push(@filearr,"$fname|$file_databasename|$file_multipart");
< #$multipartfiles{$file_databasename}=$fname;
< #foreach $key (%multipartfiles)
< #{
< #print "<br>".$key." -> "; #.$multipartfiles{$key};
< #push(@filearr,"$key|$file_databasename|$file_multipart");
< #}
---
> $multipartfiles{$file_databasename}=$fname;
> foreach $key (%multipartfiles)
> {
> #print "<br>".$key." -> ".$multipartfiles{$key};
> }
939,940c915
< #@filearr=sort{"$b" gt "$a"}(@filearr);
< @filearr=sort{"$b" cmp "$a"}(@filearr);
---
> @filearr=sort{"$b" gt "$a"}(@filearr);
945c920
< # print "<br>$key\n";
---
> # print "<br>$key: $filearray{$key}";
949,959c924,934
< #if($max_backup_files==0) {
< # PrintOut("Autodelete by count ($max_backup_files) => found $anz Backups");
< # if ($anz>0)
< # {
< # for($i = 0; $i < ($anz-$max_backup_files); $i++)
< # {
< # @str=split(/\|/,$filearr[$i]);
< # push(@trash_files, $str[2]);
< # }
< # }
< #} else {
---
> if($max_backup_files_each==0) {
> PrintOut("Autodelete by count ($max_backup_files) => found $anz Backups");
> if ($anz>0)
> {
> for($i = 0; $i < ($anz-$max_backup_files); $i++)
> {
> @str=split(/\|/,$filearr[$i]);
> push(@trash_files, $str[2]);
> }
> }
> } else {
963d937
< my $delete_multi =0;
966d939
< #$item: test_2009_06_02_00_33.sql.gz|test[|1]
968,995c941,943
<
< #init db-counter
< if (!defined $dbanz{$str[1]}) {
< $dbanz{$str[1]}=1;
< }
<
< #multipart?
< if(!defined $str[2]){
< #no mp
< $dbanz{$str[1]}++;
< $delete_multi = 1;
< }elsif($str[2]>1){
< #mp
< #why do we need this
< if(!$delete_multi){
< $delete_multi = 0;
< }
< }
<
< if($dbanz{$str[1]}>$max_backup_files && $delete_multi){
< push(@trash_files, $str[0]);
< #print $str[0].$delete_multi."\n";
< }
<
< if(defined $str[2] && $str[2]==1){
< $dbanz{$str[1]}++;
< $delete_multi = 1;
< }
---
> if (defined $dbanz{$str[1]}) { $dbanz{$str[1]}++; }
> else { $dbanz{$str[1]}=1; }
> push(@trash_files, $str[2]) if($dbanz{$str[1]}>$max_backup_files);
998c946
< #}
---
> }
1013,1015c961
< my $file_to_delete = $backup_path.$datei;
< unlink($file_to_delete);
< #print "\n$backup_path$datei";
---
> unlink($datei);

zusätzlich hänge ich das komplette script an

gruß Jonathan


/EDIT JayD: **** = persönliche Daten entfernt

OfflineView user's profileSend private messageVisit poster's website    
Anzeigen











Posted:    Anzeigen Back to top




crondump.zip
 Description:

Download
 Filename:  crondump.zip
 Filesize:  10.7 KB
 Downloaded:  258 Time(s)


    
JayD
Moderator
Moderator




Age: 50
Joined: 12 Apr 2009
Posts: 1017
Location: Ruhrgebiet


germany.gif

PostPosted: 2009-06-11, 13:43    (No subject) Reply with quoteBack to top

Hi,

ich habe jetzt aus Zeitgründen nicht gelesen, worum es genau geht.
Ich hoffe, Deine angehängte Datei enthält keine vertraulichen Daten?
Wollte sie grad schon entfernen... ansonsten schicke soetwas bitte lieber per Mail.

Wenn es nur ein Testfile ist, ist es natürlich ok.

_________________
Gruß,
Jörg


Anfragen zu vBulletin, welche nichts mit Datenbanken bzw. dem Dumper zu tun haben, bitte nicht hier sondern im vBulletin-Support-Forum stellen.

Aus technischen Gründen befindet sich der Rest der Signatur auf der Rückseite dieses Beitrags.

OfflineView user's profileSend private message    
DSB
Developer
Developer




Age: 41
Joined: 30 Apr 2004
Posts: 16073
Location: Reichenberg bei Würzburg


germany.gif

PostPosted: 2009-06-11, 18:33    (No subject) Reply with quoteBack to top

Hallo Jonathan,

vielen, herzlichen Dank!
Ich werde das moregn testen und wenn es zufriedenstellend läuft, werde ich das übernehmen und den Download hier im Forum aktualisieren.
Du glaubst gar nicht wie toll ich es finde, dass Du Dich daran gesetzt hast und hier Ergebnisse postest. *freu*

_________________
Gruß / Greetings, DSB

Teigwaren heißen Teigwaren, weil sie Teig waren.
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.

OnlineView user's profileSend private messageSend e-mailVisit poster's website    
DSB
Developer
Developer




Age: 41
Joined: 30 Apr 2004
Posts: 16073
Location: Reichenberg bei Würzburg


germany.gif

PostPosted: 2009-06-14, 17:49    (No subject) Reply with quoteBack to top

So, ich habe die Version von Jonathan (ganz herzlichen Dank noch einmal!) mit der meinen verifiziert und zusammen gefügt. Mit Revision 432 sollte nun also auch das automatische Löschen wieder funktionieren - sowohl für normale, als auch für Multipart-Dateien. Bitte testet es ausgiebig und meldet mir hier, falls es doch noch Probleme geben sollte.

Jetzt wird das Löschen am Ende der Routine gemacht, damit im Fehlerfall beim Backup die alten Dateien erhalten bleiben. So kann man dann im Notfall noch auf ein älteres Backup zurück greifen.

Damit hat man auch einen weiteren Indikator falls das Skript vorzeitig abgebrochen wird. In dem Fall wird die Auto-Löschroutine nicht ausgeführt. Hat man also permanent mehr Dateien im work/backup-Verzeichnis obwohl man die automatische Löschfunktion aktiviert hat, so ist klar, dass das Perlskript vorzeitig abgebrochen wird, da es bei Abarbeitung nicht bis zur Ausführung der Löschroutine kommt.

_________________
Gruß / Greetings, DSB

Teigwaren heißen Teigwaren, weil sie Teig waren.
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.

OnlineView user's profileSend private messageSend e-mailVisit poster's website    
JayD
Moderator
Moderator




Age: 50
Joined: 12 Apr 2009
Posts: 1017
Location: Ruhrgebiet


germany.gif

PostPosted: 2009-06-14, 21:27    (No subject) Reply with quoteBack to top

Eine ebenso simpele wie geniale Idee, vielen Dank. Smile

Ich werde das vermutlich übernächste Woche erst testen, da mir zunächst noch ein Serverumzug bevorsteht und ich vorher möglichst nichts mehr ändern möchte.
Auf anderen Plattformen mit kleineren DB könnte ich es eh nicht ausreichend genug testen.
Aber ich werde dann selbstverständlich berichten.

_________________
Gruß,
Jörg


Anfragen zu vBulletin, welche nichts mit Datenbanken bzw. dem Dumper zu tun haben, bitte nicht hier sondern im vBulletin-Support-Forum stellen.

Aus technischen Gründen befindet sich der Rest der Signatur auf der Rückseite dieses Beitrags.

OfflineView user's profileSend private message    
JJT
Developer
Developer





Joined: 04 Nov 2006
Posts: 131


germany.gif

PostPosted: 2009-06-23, 00:32    update Reply with quoteBack to top

hi,

freut mich wie es bei der Weiterentwicklung voran geht. Aber am meisten freut mich, dass mein personally most annoying bug mit rev 433 behoben worden ist. Wenn das der Lohn für meine Arbeit war, dann wars das wert :-)

Ansonsten hätte ich noch eine kleine Änderung am cron-script, beim autofind-path. in der Default-Einstellung würde sonst der Pfad nicht 'gefunden' werden, falls ein falscher eingetragen sein sollte.

138,139c140,141
< #try to guess path if $absolute_path_of_configdir is not filled
< if($absolute_path_of_configdir eq "" || ! -d $absolute_path_of_configdir)
---
> #try to guess path
> if($absolute_path_of_configdir eq "")

noch 2 Kleinigkeiten,
- cron-script bei aufruf per cmd ohne html-output, kommt als erste zeile 'Content-Type'.....
- bei mir unter linux mit firefox werden die Texte teilweise zu groß ausgegeben, z.b. unter Einstellungen. Fix in style.css, zeile 104. Bei
table td
hab ich zusätzlich font-size:12pt hinzugefügt. Nun sieht es wieder gut aus.

aber ich sehe schon, ihr wollt mich arbeitslos machen, alle meine mir bekannten sind inzwischen behoben :-) danke!!

Ein Wunsch/Verbesserungsvorschlag hätte ich aber noch. Und zwar im cron-Script, wenn man alle DBs sichert. Anstatt die DBs aus der Config zu lesen, DBs dynamich per sql abfragen. Optional könnte man dazu noch ein Config-Parameter spendieren, der über die GUI änderbar ist.
Das hätte 2 Vorteile, zum einem bräuchte man nicht mehr das zusätzliche db_refresh (cron) script, zum anderen könnte man dann alles bequem über die GUI steuern.

und noch ein letzter Tip, kennst du subversion keywords? http://svnbook.red-bean.com/en/1.4/svn.advanced.props.special.keywords.html
damit kann man z.b. automatisch eine variable mit der aktuellen Revision füllen lassen, so dass man das nicht mehr manuell machen muss.


PS: Die (Server)zeit vom Forum geht um eine Stunde falsch. Im Moment ist es 00:32 und nicht 23:32 ;-)

OfflineView user's profileSend private messageVisit poster's website    
DSB
Developer
Developer




Age: 41
Joined: 30 Apr 2004
Posts: 16073
Location: Reichenberg bei Würzburg


germany.gif

PostPosted: 2009-06-23, 00:42    (No subject) Reply with quoteBack to top

Hallo Jonathan,

vielen Dank für Deine sinnvollen Hinweise. Die kleinen Diffs übernehme ich gerne.
Deinen anderen Vorschlag (DBs dynamisch ermitteln) werde ich momentan noch nicht übernehmen, da ich noch andere Dinge auf dem Zettel habe, die zunächst wichtiger sind. Im Hinterkopf habe ich das aber auch schon länger. Mit Perl werde ich langsam auch wärmer und will da noch einige Strukturen gerade bezüglich der Konfiguration noch umbauen/erweitern.

Wegen der svn-keywoards mache ich mich gerne mal schlau. Dir ist also aufgefallen, dass ich das immer durch händische Anpassungen mache und auch gerne mal vergesse Wink . Ein Automatismus käme mir da sehr gelegen. Ich wusste nur noch nicht, dass es so etwas gibt. Aber jetzt kann ich mich diesbezüglich schlau machen. Danke für den Tipp!

_________________
Gruß / Greetings, DSB

Teigwaren heißen Teigwaren, weil sie Teig waren.
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.

OnlineView user's profileSend private messageSend e-mailVisit poster's website    
DSB
Developer
Developer




Age: 41
Joined: 30 Apr 2004
Posts: 16073
Location: Reichenberg bei Würzburg


germany.gif

PostPosted: 2009-06-26, 23:46    (No subject) Reply with quoteBack to top

Deine Anregungen sind jetzt in Revision 453 mit eingeflossen.

Leider habe ich nicht heraussfinden können, wie ich Deinen Tipp bezüglich der SVN-Variablen mit meinem Tortoise-SVN-Client umsetzen kann. Hast Du da einen Tipp für mich, wie ich das dort einbinden und anwenden kann?

_________________
Gruß / Greetings, DSB

Teigwaren heißen Teigwaren, weil sie Teig waren.
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.

OnlineView user's profileSend private messageSend e-mailVisit poster's website    
JJT
Developer
Developer





Joined: 04 Nov 2006
Posts: 131


germany.gif

PostPosted: 2009-07-01, 00:06    (No subject) Reply with quoteBack to top

hi,

komme grad vom festival...

danke :-)

Mit Tortoise hab ich noch nicht wirklich gearbeitet, da ich nur linux im Einsatz hab...
aber so auf die Schnelle hab ich das hier gefunden:
http://www.aliaspooryorik.com/blog/index.cfm/e/posts.details/post/176

Gruß Jonathan

_________________
Gruß Jonathan

OfflineView user's profileSend private messageVisit poster's website    
Display posts from previous:      
Post new topicReply to topic


 Jump to:   


Show permissions
Similar topics
Topic Author Forum Replies Posted
No new posts Serverumzug - von Hoster zu Hoster mi... soigroeg Allgemeine Fragen zu MySQLDumper 1 2012-05-21, 13:36 View latest post
No new posts Autodelete without visiting MySQLDump... DrewC Errors and questions 5 2012-04-13, 17:37 View latest post
No new posts Umzug Forumprofi auf eigenen Webspace... Falaffel MySQLDumper 1.24 4 2012-03-26, 10:47 View latest post
No new posts Mysqldumper, terner Cronjob und .htac... Quizmasterlex Gelöst/Erledigt 4 2012-03-03, 10:29 View latest post
No new posts MySQLDumper öffnet massenhaft DB-Verb... meaper Fehler / Probleme 1 2012-02-27, 10:47 View latest post

 
CrackerTracker © 2004 - 2012 CBACK.de

Powered by Orion based on phpBB © 2001, 2002 phpBB Group
CBACK Orion Style based on FI Theme
All times are GMT + 2 Hours

phpBB SEO