Come recuperare il tuo 12c Database Oracle con copie

Copie consentono il recupero superveloce dei database Oracle 12C e meno recuperi tecnici quando hai perso un disco e il file deve andare in una posizione diversa.

Alcuni amministratori di database (DBA) sostengono che è corretto utilizzare la copia del posto è stato eseguito in su. Buone DBA sottoscrivere il mantra "Ogni cosa ha il suo posto; ogni cosa al suo posto. "Tuttavia, i tempi stanno cambiando. Ad esempio, la popolarità di grandi reti SAN (Storage Area), dove tutti i file vanno nello stesso posto, è in crescita.

DBA non hanno più responsabilità di organizzare, dati, la banda, e di etichette indipendenti, né hanno così tanto tempo. La SAN fa tutto la protezione e striping per voi. Inoltre, Oracle ha anche rilasciato, in sostanza, il suo gestore di volumi: Automatic Storage Management (ASM). ASM può aiutare:

  • Rilassate le convenzioni di denominazione dei file e irreggimentato.
  • Trova più tempo per sfruttare meglio le caratteristiche che Oracle deve proteggere e gestire i dati.

Si ottiene una chiamata da un utente che sta ottenendo il seguente errore:

SQL> select *
2 da emp;
da emp
*
ERRORE alla linea 2:
ORA-01116: errore nel file di database di apertura 4
ORA-01110: file di dati 4: '/u02/app/oracle/oradata/dev12c/users01.dbf'
ORA-27041: impossibile aprire il file
Errore Linux-x86_64: 2: Nessun file o directory
Ulteriori informazioni: 3

Dopo alcune indagini, si vede che qualcuno ha rimosso il file di dati da parte degli utenti tablespace. Questo tablespace è fondamentale e deve essere recuperato immediatamente. Si decide di recuperare con RMAN utilizzando una copia del file di dati.

  1. Accedi al tuo bersaglio con RMAN.
  2. Assicurarsi di avere una copia del file di dati tabelle UTENTI:

    <Lista copia di utenti tablespace;>

    Si dovrebbe vedere qualcosa di simile a questo:

    Elenco delle copie file di dati
    =======================
    File chiave S Tempo di completamento CKP SCN CKP Tempo
    ------- ---- - -------------------- ---------- -------- ------------
    19 4 A 30-giu-2013 12:11:31 2.365.031 30 giugno 2013 12:11:30
    Nome: /u01/app/oracle/fast_recovery_area/DEV12C/datafile/o1_mf_users_8x0p5lyh_.dbf
    Tag: LEVEL0_COPY
    12 4 30-giugno-2013 11:12:05 2.356.203 30 giugno 2013 11:12:05
    Nome: /u01/app/oracle/fast_recovery_area/DEV12C/datafile/o1_mf_users_8x0lp5mo_.dbf
    Tag: LEVEL0_COPY
    7 4 A 30-giu-2013 11:08:20 2.355.686 30 giugno 2013 11:08:20
    Nome: /u01/app/oracle/fast_recovery_area/DEV12C/datafile/o1_mf_users_8x0lh47j_.dbf
    Tag: USERS_COPY
    6 4 A 30-giu-2013 11:08:08 2.355.658 30 giugno 2013 11:08:08
    Nome: /u01/app/oracle/fast_recovery_area/DEV12C/datafile/o1_mf_users_8x0lgrkr_.dbf
    Tag: TAG20130630T110808
    5 4 A 30-giu-2013 11:08:04 2.355.632 30 giugno 2013 11:08:03
    Nome: /u01/app/oracle/fast_recovery_area/DEV12C/datafile/o1_mf_users_8x0lgmrf_.dbf
    Tag: TAG20130630T110430

  3. Prendere il tablespace offline (perché il database è aperto):

    <Sql "alter tablespace utenti non in linea";>

    Vedete questo:

    dichiarazione di sql: alter utenti tablespace offline

  4. Passare alla copia:

    <Utenti interruttore tablespace di copiare;>

    Si vede qualcosa di simile a questo:

    file di dati 4 commutato datafile copia "/ u01 / app / oracle / fast_recovery_area / DEV12C / file di dati /
    o1_mf_users_8x0p5lyh_.dbf "

  5. Recuperare la copia che è stata presa in precedenza:

    <Recuperare gli utenti tablespace;>

    Si vede qualcosa di simile a questo:

    Partendo recuperare al 30-JUN-2013 12:21:52
    Canale assegnato: ORA_DISK_1
    Canale ORA_DISK_1: SID = 48 = tipo di dispositivo DISK
    partenza ripristino dei supporti
    recupero completo, il tempo trascorso Media: 00:00:00
    Finito recuperare al 30-JUN-2013 00:21:53

  6. Modificare il tablespace per rimetterlo in linea:

    <Alter tablespace utenti on-line;>

    Vedete questo:

    Dichiarazione trasformati

Tutto fatto! Vedete come rapido, senza dover ripristinare il file? Naturalmente, si deve venire a patti con esso che è nella tua Area Recupero veloce. Se davvero i bug si, si può fare uno dei seguenti:

  • È possibile rinominare il file e spostarlo più tardi, quando si dispone di una finestra di manutenzione.
  • Quando si prende la copia, è possibile copiare il file in un'area ausiliaria esterna tua Recovery Area veloce (dove non vi dispiace che sia) nel caso in cui si deve usare.