Categories
Oracle Oracle Datenbank Tablespaces

Beenden des Backup Mode von Datendateien / Tablespaces

Ist ein Tablespace im Backup Mode verblieben, obwohl das Backup nicht mehr läuft, so muss der Modus manuell umgesetzt werden. Zuerst gilt es herauszufinden, welcher Tablespace oder welche Datendatei im Backup Modus ist. Dazu kann wie im Artikel Oracle Backup Mode auflisten beschrieben vorgegangen werden.

Meist möchte man nur die Tablespaces wissen, da brbackup und andere Tools nicht einzelne Datendateien in den Backup Modus setzen, sondern den gesamten Tablespace.

Achtung: Bitte unbedingt prüfen, ob wirklich kein Backup läuft!

> SELECT d.tablespace_name, b.time, b.status FROM dba_data_files d, v$backup b WHERE d.file_id = b.FILE# AND b.STATUS = ‘ACTIVE’;`TABLESPACE_NAME TIME STATUS
—————- ————— ———
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
PSAPSR3731 15-JUL-15 ACTIVE
14 rows selected.`

Categories
Oracle Oracle Datenbank Tablespaces

Oracle Backup Mode auflisten

Die folgenden SQL Statements liefern eine Liste aller Tablespaces und der zugehörigen Datendateien, die sich im Backupmode befinden. Bitte auch den Artikel Beenden des Backup Mode von Datendateien / Tablespaces beachten.

SQL> col status format a11
set line 100
tti "Active Backup Datafiles"
set pagesize 100
set linesize 120
col file_name format a50
col tablespace_name format a16
select d.file_name, d.tablespace_name, b.status, b.time
from v$backup b, dba_data_files d
where b.status='ACTIVE' and d.file_id=b.file#;

tti off

Die Spalte TIME gibt an, seit wann die Datendatei in diesem Modus ist.

Beispiel Ausgabe

Mon May 13 Active Backup Datafiles page 1
FILE_NAME TABLESPACE_NAME STATUS TIME
/oracle/HS1/sapdata2/btabi_1/btabi.data1
/oracle/HS1/sapdata3/btabd_1/btabd.data1
/oracle/HS1/sapdata2/btabd_2/btabd.data2
/oracle/HS1/sapdata4/es46ci_1/es46ci.data1
/oracle/HS1/sapdata4/es46ci_2/es46ci.data2
/oracle/HS1/sapdata2/es46cd_1/es46cd.data1
/oracle/HS1/sapdata6/es46cd_2/es46cd.data2
/oracle/HS1/sapdata3/es46cd_3/es46cd.data3
/oracle/HS1/sapdata2/btabd_3/btabd.data3
oracle/HS1/sapdata3/es46cd_4/es46cd.data4
/oracle/HS1/sapdata2/btabi_2/btabi.data2
/oracle/HS1/sapdata4/es46ci_3/es46ci.data3
/oracle/HS1/sapdata3/es46cd_5/es46cd.data5
/oracle/HS1/sapdata2/btabi_3/btabi.data3
14 rows selected.
PSAPBTABI
PSAPBTABD
PSAPBTABD
PSAPES46CI
PSAPES46CI
PSAPES46CD
PSAPES46CD
PSAPES46CD
PSAPBTABD
PSAPES46CD
PSAPBTABI
PSAPES46CI
PSAPES46CD
PSAPBTABI
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
ACTIVE
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02
13-MAY-02

Achtung: Sollte die Oracle Datenbank nicht mehr im Status OPEN sein, so kann dieser Befehl nicht ausgeführt werden, da die dba_* Views nicht verfügbar sind. In diesem Fall bitte die folgende Abfrage mit v$ Views verwenden.

col name format a50
select vb.FILE#, vd.NAME, vb.STATUS, vb.TIME
from v$backup vb, v$datafile vd
WHERE vd.FILE#=vb.FILE# and vb.STATUS='NOT ACTIVE';
FILE# NAME STATUS TIME


  1 D:\ORACLE\HS1\SAPDATA1\SYSTEM_1\SYSTEM.DATA1       NOT ACTIVE  14-JUL-15
  2 D:\ORACLE\HS1\SAPDATA1\SYSAUX_1\SYSAUX.DATA1       NOT ACTIVE  14-JUL-15</code>

Um den Backup Modus zu beenden, sind die SQL Befehle

ALTER TABLESPACE <tablespace Name> END BACKUP;
ALTER DATABASE DATAFILE<Name und Pfad der Datendatei> END BACKUP;

zu verwenden.
Achtung: Bitte unbedingt prüfen, ob wirklich kein Backup läuft!