Oracle 12c : Spostare un datafile (a caldo)

Fino al rilascio della versione Oracle 11g spostare un datafile è sempre stato un problema;
Bisognava rendere la tablespace in stato offline, copiare il datafile nella nuova destinazione e rinominarlo:
SQL> alter database rename datafile “A” to “B”;
Dalla versione Oracle 12c, si può spostare un datafile dal punto di lettura ad un altro senza dover mettere la
tablespace in stato offline.
Tutto questo viene fatto mentre il database è Attivo.
Con questi comandi:
alter database 
   move datafile 
   ‘/u01/app/oracle/oradata/FILE.dbf’ 
to 
   ‘/u02/app/oracle/oradata/ORADB12/FILE.dbf’;
E’ anche possible spostare un datafile attraverso un numero specifico che Oracle ha assegnato e spostarlo in una
nuova posizione, senza specificare il nome del datafile.
Ad esempio:
SQL> select file#,name from v$datafile where file#=1; 
FILE#      NAME 
———- ——————————————————- 
1         /u01/app/oracle/oradata/ORADB12/FILE.dbf 
1 rows selected. 
SQL> alter database move datafile 1 to ‘/tmp/FILE.dbf’; 
Database altered. 
SQL> select file#,name from v$datafile where file#=1; 
FILE#      NAME 
———- ——————————————————- 
1          /tmp/FILE.dbf 
 
1 rows selected.

Potrebbero interessarti anche...