modifiche per aggiungere backupa crontab
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user