Bonjour,
je ne comprend pas vraiment le principe de passer par un script sql.
Pour ma part je ferais plutôt un script ksh.
Les data files sont normalement dans un sous-répertoire du nom de la base, donc une command du type:
cp /*/oradata/<SID>/*.* /save
devrait déjà presque suffire. Il te reste à récupérer le pfile et le password file (si tu en utilise un).
Pour le script à "chaud" il te faut faire ça avec RMAN. L'idéal est de faire un script .rcv avec les commandes rman puis de le lancer via un script ksh.
Un exemple rapide de script rcv:
1 2 3 4 5 6 7 8
| run{
allocate channel d1 type disk;
backup incremental level 0 format '/save/bck_%d_%T_%t_s%s_p%p.bck' database;
sql 'alter system archive log current';
backup archivelog all format '/save/arc_%d_%T_%t_s%s_p%p.bck' delete input;
backup format '/save/ctl_%d_%T_%t_s%s_p%p.bck' current controlfile;
release channel c1;
} |
Pour le lancer depuis la ligne de commande ou un script ksh utilise:
sans catalog:
rman target / cmdfile='/xxx/yyy/zzz/script.rcv' log=/xxx/yyy/zzz/log.log
En espèrant t'avoir aidé
Kaz
Partager