Newsgroup: it.comp.lang.delphi
Titolo: BackUp

Ciao a tutti,
    ecco il problema .... ho la necessita' di fare il backup della directory 
di lavoro del programma in questa sequenza
- Una volta al giorno alle ore xx.yy oppure
- Una volta alla settimana nel giorno z alle ore xx.yy
Se il programma viene lanciato giornalmente all'avvio controllo il tipo di 
backup scelto (giornaiero o settimanale) e, se necessario, il giorno e l'ora 
e se il file di backup, nel formato gg_mm_aa, esiste.
Se non esiste si fa il backup.
Ma se il programma rimane in esecuzione per piu' giorni non so come fare 
questi controlli.
Pensavo di usare un gestore di eventi (sheduler), e' la strada giusta ???
Se si esiste qualcosa di free ???
Grazie a tutti
Ciao e buona Pasqua !!!
Daniele 
__________ Information from ESET Smart Security, version of virus signature database 4001 (20090411) __________
The message was checked by ESET Smart Security.
http://www.eset.com

Sarebbe importante sapere che tipo di file sono inclusi nel backup...
Ad esempio, se si tratta di files di database client/server la copia
dei file è un sistema che NON VA MAI USATO,
Nel caso, VANNO USATI GLI STRUMENTI DI BACKUP FORNITI DAL DATABASE.
A parte questa non ovvia considerazione, se la app è attiva potresti
avere 2 problemi:
1) il backup non va xche trova dei files in uso
2) il backup va ma rischi di avere dei files inconsistenti.
Ad esempio, se usi paradox o files dbf e c'è una operazione in corso
che impatta su piu files mentre scatta il backupù
potresti trovarri un backup inutilizzabile.
A.

 potresti trovarri un backup inutilizzabile.
Bhe quando entra in backup chiudo tutti i db e relative tabelle !!!! cosi' 
non dovrebbe entrare in conflitto !!!
Altri suggerimenti su come fare il backup ???
Stavo pensando anche ad una soluzione moooltooo artigianale del tipo zippare 
tutta la directory (impiega circa 40 secondi per zipparla tutta).
Grazie per la risposta.
Rimango in ascolto pr eventuasli altri consigli.
Ciao, Daniele 
__________ Information from ESET Smart Security, version of virus signature database 4002 (20090411) __________


 tutta la directory (impiega circa 40 secondi per zipparla tutta).
Ripeto: dipende dal db e dal contesto.
Se devi usare gli strumenti del backup forniti dal database l'idea di
zippare la cartella va accantonata.
O quanto meno, puoi zippare i files generati dagli strumenti di backup
del database.
Se vuoi farlo fare alla tua applicazione, devi introdurvi un thread.
Questo thread, a determinati orari tenta di farlo partire chiudendo la
connessione al db.
Ovviamente il thread non deve fare cio se qualcuno sta usando la
applicazione.
Ma tutto questo, imho, viene DOPO.
Per prima cosa, agli utenti andrebbe insegnato l'abc: " Quando hai
finito/ te ne stai andando etc ESCI DALLA APPLICAZIONE"
L''uso di tutti gli strumenti,  dal trapano al pc, va imparato.
A.

A titolo informativo so che esiste una recente tecnologia, "Volume Shadow 
Copy" (VSS) implementata dalla MS dal Server 2003 che permette di eseguire 
anche il backup dei database con file "bloccati". Tutti i nuovi sistemi di 
backup la implementano, io la uso abilitandola nel soft. True Image della 
Acronis e non ha mai dato problemi.
Per quanto riguarda la sua implementazione puoi cercare in Internet, 
eventualmente su librerie a pagamento.
Esistono soft di backup anche gratuiti che la implementano come Comodo 
Backup
http://forums.comodo.com/backup/comodo_backup_wishlist_rev_2-t13328.50.html;wap2=
Personalmente mi affiderei ad un soft pronto all'uso che adotti il VSS, 
costano una cicca ed hanno buoni scheduler impostabili senza citare anche la 
possibilita' di backup incrementali o differenziali.
Per l'intero hard-disk con tutti questi requisiti ti suggerisco il 
True-Image che esegue un "clone" dell'HD, garantendoti il ripristino anche 
in caso che questo
si guasti, pero' costa...
Ciao Giorgio

Domande....
1) questo VSS funziona?
O meglio, tu conosci qualcuno che si è trovato a fare un restore
partendo da un backup creato usando questa tecnologia?
2) Come fa VSS a gestire il caso di una transazione in corso su un db
che include piu' tabelle?
Se lui crea uno snapshot del disco a meta della transazione, rischio
di avere un backup inconsistente?
A.

 ha scritto nel messaggio 
news:8dc8c4a7-db09-4702...@j8g2000yql.googlegroups.com...
Domande....


Se non erro colloquia col database sql, ma forse in rete trovi risposte piu' 
esaustive,
Considera che e' usato da tutti i piu' grossi sistemi di backup "con lavori 
in coorso", ed e' una tecnologia nata
con Excange, Giorgio 

 con Excange
viste le male parole che ho spesso sentito su exchange, questa non la
vedo come una buona referenza.
Ma quello che mi chiedo è:
tutto sto casino per non usare gli strumenti di backup del
database? :-|
A.

 ha scritto nel messaggio 
news:8dc8c4a7-db09-4702...@j8g2000yql.googlegroups.com...
Domande....


Sembra fatto apposta ma proprio ieri mattina nel server della segreteria 
dove lavoro avevano necessita di recuperare il database del "Personale" del 
giorno prima. Il Server e' un Win. Server 2003 con TrueImage
(versione server... oltre 400Euri) ed esegue il backup schedulato ogni notte 
alle 23, col database attivo,
ho potuto prelevare solo quel file (cosa permessa) ed e' andato tutto abuon 
fine.
Certo dirai ma quando backuppa alle 23 non ci sonio transizioni attive, ma 
non credo che l'Acronis
e gli altri grossi sistemi di backup (cercali in Internet) raccontino una 
cosa per l'altra.
Ho eseguito backup sempre con l'Acronis mentre il server sql lavorava, anche 
se in questi casi non mi e' capitato di usarli per un restore.
Nulla toglie che si possa provare questa VSS in attivo col restore, il 
Comodo e' gratuito e la implementa.
Ciao Giorgio

 Ciao Giorgio
Scusami, ma tu stai dicendo che esegui i backup dei databases 
compiandone i file dal file system??
Ma da quando in qua i backup dei db si fanno in questo modo.. il 
concetto stesso di database implica che i suoi files non sono da 
considerarsi mai attendibili finchè sono "live", cioè finche il db e' 
acceso. Il fatto che non hai mai avuto problemi sino ad ora non 
significa che questo sia il modo giusto.
Ti consiglio caldamente di rivedere questo concetto, perchè esiste un 
modo certo di fare un backup 100% sicuro di un db.. ed è quello di 
farlo utilizzando gli strumenti stessi messi a disposizione di ogni 
database.
Prova a chiederti come mai in sql server esiste un comando chiamato 
"detach database": per copiare un db copiandone i suoi files, devi 
sempre prima informare il motore delle tue intezioni.. non puoi 
prelevare un file assumendo la certezza che quel file sia "congruo" 
senza prima aver chiesto al motore di consolidare lo stato interno. 
(appunto detachando l'istanza dal file)
-- 
Morde

 Comodo e' gratuito e la implementa.
Quoto.
Comuqnue, con tutto il rispetto per questi strumenti, continuo a non
capire il xche della necessita di impegolarsi con prodotti di terze
parti quando ogni database ha qualche strumento che permette di fare i
backup, magari spartani come il gnak di interbase o firebird o magari
sofisticati come quello di Oracle...
Pax vobiscum.
A.

 Morde
Non lo dico io ma le "nuove tecnologie" che avanzano Morde. Daltronde puoi 
informarsti in Internet troverai che la VSS
colloquia col database attendendo che le transizioni siano terminate per 
proseguire il backup.
Come ho gia detto eseguo con l'Acronis mensilmente backup mattutini con pc 
di lavoro che stanno usando contemporaneamente l'sql.
Ciao Giorgio

 proseguire il backup.
Puoi fornirmi qualche link diretto su cui documentarmi?
Io insisto sul mio punto di vista che stai utilizzando una soluzione 
architetturale che protegge l'integrità dei file durante il backup 
degli stessi per attuare una soluzione di tutt'altra natura, vale a 
dire il backup dei dati di un database.
Giorgio il comando backup di un database,una volta seguito da un 
restore, in termini generici ottimizza tantissimo le strutture interne 
quali indici, tablespaces, ecc...
Se tu continui a backuppare con volume shadow copy un file di database, 
che cosa ottimizzi ? tu ne preservi l'integrità, ma questo non conicide 
col preservarne le trutture in esso contenute.
Fammi avere piu' link, informazioni, perchè questa soluzione del VSS 
non la conosco accoppiata ai databases.
-- 
Morde

 conosco accoppiata ai databases.
Integro riportando questo link:
http://www.net-free.it/recensioni/viewart.php?idart=49
dove viene spiegato che il software usa il VSS ma come garante 
dell'integrità dei dati.. non parla di VSS come sostituto del backup di 
un database..
Sono sempre piu' scettico a riguardo: non escludo che un database possa 
avere la caratteristica di utilizzare VSS per copiare i suoi file, ma 
questo ripeto non puo' interessare la truttura dei dati del database!
Sono due cose diverse.
Ciao
-- 
Morde

>> is compatible with Microsoft Volume Shadow Copy Service (VSS),  <<<<<
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
then you can check the Enable VSS support box in Backup Options for
Acronis True Image to ensure completion of all transactions before the
backup process starts. Then the database will be ready to access
immediately after recovery.
....[cut]
La cosa è scontata ma meglio dirla, cosi resta "agli atti".
1) Se un db supporta VSS puoi usare VSS
2) Se un db non supporta VSS non puoi usare VSS.
Ma comunque vedo queste cose per contesti particolari dove i normali
strumenti forniti dal motore db non sono applicabili.
Ribadisco che non sputo su queste cose ma non credo che, il fatto di
poter fare una cosa sia una implicita autorizzazione a fare una cosa.
Imho, se il db mi da quello che mi serve che me ne fotte di acronis
vss etc?
Xche devo fare tutto sto casino? mettere in piedi un software,
configurarlo etc...stare dietro a fix, patch, aggiornamenti nuove
release...
Non basta tutta la munnezza che siamo gia costretti ad avere sui pc e
sui server? Dobbiamo aggiungere ulteriore complessita?
Non dico di no..Dico solo che le cose vanno fatte se e quando servono
e non per seguire l'onda delle "nuove tecnologie"
A.

 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Certo, il particolare e' vero l'ho dato per scontato per aver letto che 
sostanzialmente gran parte dei dbase lo implementano per adeguarsi.
Cmq questi software si acquistano e si usano, a meno che non cambi PC 
con altra tecnologia dell' HD che ti richiada un aggiornamento come 
quando si e' passati al SATA, ovviamento con uno scopo piu' ampio del 
semplice backup del database, in quanto proteggono l'intero HD e 
permettono il ripristino del PC in caso l'HD sia partito o corrotto in 
meno di mezz'ora.
Sto usando anche il Ghost, l'analogo per la workstation, con grosse 
soddisfazioni.
Il mio intervento voleva suggerire solo una possibilità diversa piu' 
ampia per certi versi, fermo restando che se c'e' la necessita' di 
backuppare solo il dbase condivido che e' piu idoneo l'uso delle 
funzioni di backup messe a disposizione da questo.
Ciao Giorgio