sql >> Databasteknik >  >> RDS >> Oracle

Snapshot-kontrollfilsfunktion med RMAN och ORA-00245

Innehållsförteckning

Vad är Snapshot Control-fil i Oracle?

När RMAN behöver synkronisera om från en läskonsistent version av kontrollfilen, skapar den en tillfällig kontrollfil för ögonblicksbild. RMAN behöver en kontrollfil för ögonblicksbild endast vid omsynkronisering med återställningskatalogen eller vid säkerhetskopiering av den aktuella kontrollfilen.

Om du inte använder återställningskatalogen i din miljö kommer du inte att se kontrollfilen för ögonblicksbilden om du inte gör en säkerhetskopia av den aktuella kontrollfilen

Plats för Snapshot Control-fil

Standardvärdet för kontrollfilen för ögonblicksbilden är plattformsspecifikt och beror på Oracle-hemmet.

Till exempel är standardfilnamnet på vissa UNIX-plattformar i Oracle Database 10g

$ORACLE_HOME/dbs/[email protected]

Observera att om du har konfigurerat ett flashåterställningsområde är standardplatsen för kontrollfilen för ögonblicksbild inte flashåterställningsområdet.

Från och med Oracle 11.2 (11.2.0.2 mer exakt) måste kontrollfilen för ögonblicksbilden finnas på en plats som delas av alla RAC-noder i ett kluster (den måste vara tillgänglig för alla noder på vilka instanser för en RAC-databas kan köras). Om du inte gör det kommer du med största sannolikhet att få en ORA-00245 (ORA-00245:säkerhetskopiering av kontrollfiler misslyckades) när du kör en RMAN-säkerhetskopia.

För Oracle RAC med ASM kan detta placeras på ASM-diskgrupp

$rman target /

RMAN> SHOW SNAPSHOT CONTROLFILE NAME;
RMAN>CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/oracle/dbs/snapcf_test.f'; # default

För Oracle Real Application Clusters med ASM

$rman target /
RMAN>CONFIGURE SNAPSHOT CONTROLFILE NAME TO '<shared snapshot control file>';

RMAN>CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+RECO/TEST/CONTROLFILE/snapcf_test.f';

ORA-00245:säkerhetskopiering av kontrollfil misslyckades; målet är troligtvis på ett lokalt filsystem

I fall av Oracle RAC-miljö, om ögonblicksbildskontrollen inte är inställd på delad plats eller ASM-disk, inträffar följande fel

1. if Autobackup of controlfile is enabled, RMAN is failing with error:
RMAN-571: ===========================================================
RMAN-569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-571: ===========================================================
RMAN-3009: failure of Control File and SPFILE Autobackup command on
ORA_DISK_1 channel at 10/27/2018 12:13:31
ORA-245: control file backup operation failed


2. Taking control file backup using backup controlfile command
SQL> ALTER DATABASE BACKUP CONTROLFILE TO '/path/control.bk' REUSE
*
ERROR at line 1:
ORA-245: control file backup operation failed

Upplösning

RMAN> SHOW SNAPSHOT CONTROLFILE NAME;

RMAN>CONFIGURE SNAPSHOT CONTROLFILE NAME TO '<shared snapshot control file>';

RMAN>CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+RECO/TEST/CONTROLFILE/snapcf_test.f';

Återställning från Snapshot-kontrollfil

Du kan även återställa med hjälp av snapshot-kontrollfil

restore controlfile from '/u01/app/oracle/product/11.2.0/db_1/dbs/snapcf_test.f';

Jag hoppas att du gillar det här inlägget på snapshot controlfile och ORA-00245

Lämna gärna feedbacken

Läser också
RMAN Lista backup-kommandon
RMAN-anslutning avkodad
Oracle RMAN-kommandon cheatsheet
återställ databas med RMAN
Hur felsöker du Oracle RMAN-session
RMAN-06059
RMAN-20004


  1. Fixar trasig UTF-8-kodning

  2. Jämföra virtuella molnmaskiner med hanterad molndatabas

  3. MySQL - Använder COUNT(*) i WHERE-satsen

  4. Skapa en pivottabell med PostgreSQL