#!/usr/bin/perl
#Queste cosette qui sotto sono da non toccare:
#Caricamento moduli
use strict;
use Time::localtime;
#inizializzazione variabili
my $db;
my $now;
my @data;
my $data;
my $comando='/usr/bin/mysqldump';
# my $comando='C:\mysql\bin\mysqldump.exe';
my $opzioni='-n --add-drop-table --verbose -B --port=3306';
my %conv=( Jan=>1,
Feb=>2,
Mar=>3,
Apr=>4,
May=>5,
Jun=>6,
Jul=>7,
Aug=>8,
Sep=>9,
Oct=>10,
Nov=>11,
Dec=>12 );
#ATTENZIONE:
#Puoi modificare da qui in avanti.
#Per aggiungere un nuovo db basta che scrivi:
#$db->[2]=... e ricopi la struttura pari pari con parametri nuovi.
#I parametri sono i seguenti:
# ip --> indirizzo del server
# nome --> nome del database
# user,pass --> utente e password con il quale si ci collega al database
# dir --> directory nella quale fare il dump
# suffisso --> sarebbe una stringa da mettere all'inizio del file di dump
# tabelle --> le eventuali tabelle di cui voglio fare il dump!
$db->[1]={
ip =>"216.22.28.95",
nome =>"nathanvi_sito",
user =>"nathanvi",
password=>"pippopippo",
dir =>'/home/giuserpe/tempwin/db_dump/',
suffisso=>"OOo",
tabelle =>qq(OOo_interwiki OOo_links OOo_pages OOo_rate OOo_remote_pages OOo_sisterwiki)
};
$db->[2]={
ip =>"192.168.1.1",
nome =>"archgare",
user =>"stefano",
password=>"pinopino",
dir =>'/mnt/disco_hdc1/backup_generale/mysql_data/',
suffisso=>"archgare",
tabelle =>qq(garemain)
};
$db->[3]={
ip =>"192.168.1.1",
nome =>"mioarchivio",
user =>"root",
password=>"cicciociccio",
dir =>'/home/giuserpe/tempwin/db_dump/',
suffisso=>"mioarchivio",
tabelle =>qq(tabella)
};
### ATTENZIONE
#Anche di qui non si tocca pił nulla :-)
$now=ctime();
@data=split(/ /,$now);
$data[3]=~s/:/_/g;
$data[2]=~s/(.*)/0$1/ if $data[2]<10;
$data=$data[4]."-".$conv{$data[1]}."-".$data[2]."-".$data[3];
my $i=1;
while($db->[$i]){
system("$comando --host=$db->[$i]{ip} --user=$db->[$i]{user} --password=$db->[$i]{password} $opzioni $db->[$i]{nome} @$db->[1]{nathanvi_sito} > $db->[$i]{dir}/backp-$data-$db->[$i]->{suffisso}.sql");
++$i;
}
--
VittorioZuccala - 23 Mar 2005