modifiche per aggiungere backupa crontab

This commit is contained in:
2017-09-20 00:01:10 +02:00
parent 45fbc7e071
commit 7d2eda6a03

View File

@@ -22,8 +22,11 @@ my ( $company_db_name, $company_db_user, $company_db_pwd );
my ( $company_os_user, $company_os_pwd );
my $company_os_grp = '1005'; #group aseuser
sub getTimeStamp
{ # parm [ts] => timestamp for filename; [log] => timestamp for log; [db_ts] => timestamp for db;
sub getTimeStamp {
#parm [ts] => timestamp for filename
# [log] => timestamp for log
# [db_ts] => timestamp for db;
my $format = "%04d%02d%02d%02d%02d%02d";
my ($p1) = @_;
if ( defined $p1 and $p1 eq "log" ) {
@@ -383,6 +386,26 @@ sub setCompanyOSSet {
. $company_os_user . "\n";
}
print getTimeStamp("log")
. " - pid $$ >> Create mysql asepath for os user.\n";
my @args = (
"/bin/su -c 'mysql_config_editor set --login-path=asepath --host=localhost --user=root --password' - "
. $company_os_user );
system(@args) == 0
or die( getTimeStamp("log") . " - pid $$ >> system @args failed: $?\n" );
print getTimeStamp("log") . " - pid $$ >> Add crontab db backup.\n";
open my $fh, "| crontab -u $company_os_user -"
or die( getTimeStamp("log") . " - pid $$ >> Can't open crontab: $!" );
my $cron = qx(crontab -l);
print $fh
"$cron\n0 1 * * * /usr/bin/mysqldump --login-path=asepath --net_buffer_length=4096 "
. $company_db_name
. " | /bin/bzip2 -c > /home/asega/db_dumps/backup-"
. $company_db_name
. "-\$(\$TIMESTAMP).sql.bz2 2>> /home/asega/log/dump_db.log";
close $fh;
return 1;
}