Oracle 10g Flashback. Andrea Held



Ähnliche Dokumente
Oracle 10g Flashback. Andrea Held Business Management Systeme Deutsche Post ITSolutions. Deutsche Post ITSolutions GmbH

Oracle Flashback. in der Praxis Dr. Frank Haney 1

Oracle Flashback Der Rewind-Button für die Datenbank

IT-Symposium 2004 Experten im Dialog

Oracle Flashback Ein Überblick

Datenhistorisierung mit Oracle Flashback und Data Guard

Oracle Real Application Cluster, Data Guard und Flashback

IT-Symposium /20/2004. Ralf Durben. Business Unit Datenbank. ORACLE Deutschland GmbH. 1

Ein reales Testumfeld bereitstellen - basierend auf einer Produktionsdatenbank (ohne eine neue Kopie zu erstellen)

Oracle Flashback DOAG K onferenz Nürnberg 2009 Marco P atzwahl Patzwahl


Flashback mal sieben. DOAG Konferenz , Nürnberg. Klaus Reimers

Einstellungen zur Verwendung von Flashback-Abfragen

Flashback Früher war alles besser Marion Mahr Daniel Schulz Flashback Früher war alles besser

Oracle Real Application Cluster, Data Guard und Flashback

Datenbanken Konsistenz und Mehrnutzerbetrieb III

Oracle Backup und Recovery

IT-Symposium Mike Dietrich. BU Database Technologies ORACLE Deutschland GmbH. Page 1. 1

Datensicherheit und Hochverfügbarkeit

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum:

Prakt. Datenbankprogrammierung. Sommersemester Was sind Constraints? I,11: Verwendung von Constraints. Festlegung von Constraints

Die Datenmanipulationssprache SQL

PostgreSQL in großen Installationen

Freiberuflicher IT-Berater Schwerpunkte: Unix, Oracle, Netzwerk. IT-Berater. Dipl.-Inform.

Donnerstag, 10. November h00, Musensaal Database. LogMiner im Einsatz. Marco Patzwahl MuniQSoft GmbH, Unterhaching b.

Die Idee der Recovery Area: Sie enthält bei Beschädiging der Database Area alles, was für ein erfolgreiches Recovery gebraucht wird

Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.

Oracle Datenbank - Recovery

Datenbankadministration

ORACLE Database Migration

Listener: Bei Oracle erfolgt die Steuerung (konventionell) via listener.ora (Listener Konfiguration), tnsnames.ora (Client Konfiguration)

Naxtron GmbH Schlosstalstrasse Winterthur. Subject. New Features Oracle 9i Architecture

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Inhaltsverzeichnis. Geleitwort der Fachgutachterin Vorwort Einführung Architektur eines Oracle-Datenbanksystems...

Hinweise zur Installation von MySQL


SQL. Fortgeschrittene Konzepte Auszug

Erzeugen von Constraints

MIN oder MAX Bildung per B*Tree Index Hint

Tipps & Tricks: März Parameter der tnsnames.ora im RAC Umfeld. 1. Parameter: Bereich: Erstellung: RAC 03/2011 SH. Letzte Überarbeitung: 11.

Kopplung von Datenbanken

Titel. System Center Configuration Manager 2012 R2 Anleitung Installation Softwareupdatepunkt und WSUS Integration

Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1

Referenzielle Integrität SQL

11. Backup & Recovery. Datenbankadministration

Mengen- oder SET-Operatoren fassen das Ergebnis von zwei oder mehreren Teilabfragen zu einem Ergebnis zusammen.

SQL (Structured Query Language) Schemata Datentypen

Kurs. Teil 7 UNDO-Management. Universität Hannover. Agenda. Einführung. Nutzung RBS Oracle 9i Einführung Performance Tuning.

Automatisierte Datenmigration mit dynamischen SQL

RMAN Recover Szenarien inkl. Wechsel der Inkarnation

Urs Meier Art der Info Technical Info (Februar 2002) Aus unserer Projekterfahrung und Forschung

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS Metadaten

Übersicht über Datenbanken

Total Recall Eine Reise in die Tiefen des Oracle Gedächtnis

Thermoguard. Thermoguard CIM Custom Integration Module Version 2.70

Beispiel 1: Filmdatenbank

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11

MySQL Installation. AnPr

Teil 2: Ablauf der Analyse festlegen

Step by Step Softwareverteilung unter Novell. von Christian Bartl

EINRICHTEN EINER BMD NTCS SICHERUNG MIT SQL 2012

Datenbanken: Backup und Recovery

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Entwicklung einer Informix- Administrationsdatenbank mit ERwin

SQL: statische Integrität

Abfragen: Grundbausteine

IV. Datenbankmanagement

die wichtigsten Caches (SGA) sind on-the-fly änderbar.

Informatik 12 Datenbanken SQL-Einführung

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Oracle GridControl Tuning Pack. best Open Systems Day April Unterföhring. Marco Kühn best Systeme GmbH

IT-Symposium

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

SQL structured query language

Performance Tools. für alle Editionen

PayPal PLUS für Shopware

Datenbanken für Online Untersuchungen

Allzeit bereit Hochverfügbarkeit mit Oracle 10g. Andrea Held Systemarchitektin / Deutsche Post ITSolutions

Prozessarchitektur einer Oracle-Instanz

FRAGEBOGEN ANWENDUNG DES ECOPROWINE SELBSTBEWERTUNG-TOOLS

DB Restore mit SQL Server7

Transaktionsverwaltung

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Installation SQL- Server 2012 Single Node

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

Tag 4 Inhaltsverzeichnis

Schlüsselworte Data Guard, Standby Datenbank, RMAN, Backup, Restore, Recovery

Views in SQL. 2 Anlegen und Verwenden von Views 2

Nutzung von GiS BasePac 8 im Netzwerk

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Backup & Recovery in Oracle 11g Funktionen und Features

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

<Insert Picture Here> Sie läuft, und läuft, und läuft Verfügbarkeit - Die Mobilitätsausstattung in der EE

ecaros2 - Accountmanager

SQL für Trolle. mag.e. Dienstag, Qt-Seminar

Aktualisierung zum Buch Windows und PostgreSQL

Transkript:

Oracle 10g Flashback Andrea Held Seite 1-1

Agenda Flashback Technologien Architektur Anwendung Probleme Bewertung: Möglichkeiten und Grenzen Seite 1-2

Flashback Level Flashback Query Flashback Table Flashback Drop Flashback Database Seite 1-3

Flashback Query Mit Oracle 9i eingeführt In 10g: Einige Änderungen und Vereinfachungen in der Syntax Erlaubt Abfrage historischer Zustände von Datenbeständen Basis ist Automatic Undo Management (AUM) Seite 1-4

Flashback Query in 9i Abfrage der Daten zu einem historischen Zeitpunkt Kein DBA Eingriff, keine Recovery Operation notwendig Aktueller Datenbestand bleibt unangetastet Auswahl über SCN oder Zeitpunkt Seite 1-5

Voraussetzungen AUM muss genutzt werden: UNDO_MANAGEMENT=AUTO UNDO TS sollte groß genug gesetzt werden UNDO_RETENTION kann gesetzt werden Unter 9i: Benutzer benötigt execute Rechte auf DBMS_FLASHBACK Seite 1-6

Flashback unter 9i DBMS_FLASHBACK.ENABLE_AT_TIME oder DBMS_FLASHBACK.ENABLE_AT_SYSTEM_CHANGE_NUMBER Beenden mit: DBMS_FLASHBACK.DISABLE Während Flashback keine DML und DDL Operationen EXECUTE DBMS_FLASHBACK.ENABLE_AT_TIME( 01-JAN JAN-2001 ); SELECT salary FROM employee WHERE empid = 41863; EXECUTE DBMS_FLASHBACK.DISABLE; Seite 1-7

Flashback Query auf 10g Neue, erweiterte Syntax: SELECT <column_list> FROM <table_name> AS OF TIMESTAMP <timestamp>; SELECT <column_list> FROM <table_name> VERSIONS BETWEEN <start_timestamp> AND <end_timestamp>; Seite 1-8

Flashback Query Beispiel 1: SQL>SELECT * FROM dept 2> AS OF TIMESTAMP 3> to_timestamp('02-03 03-2004 07:00:00','dd-mm mm-yyyy hh24:mi:ss'); DEPTNO DNAME LOC ------------ --------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON 50 IT FRANKFURT Seite 1-9

Flashback Query Beispiel 2: SQL> SELECT deptno, dname, loc, versions_operation, 2> versions_xid, versions_starttime 3> FROM scott.dept 4> versions between timestamp minvalue and maxvalue 5> ORDER BY deptno, versions_starttime DEPTNO DNAME LOC V VERSIONS_XID VERSIONS_STARTTIME ---------- -------------- ------------- - ---------------- ------------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON 50 IT FRANKFURT 50 MARKETING FRANKFURT U 1E000A0008000000 02.03.04.04 09:30:02 50 FRANKFURT U 1E000B0008000000 02.03.04.04 09:31:15 50 FRANKFURT D 1E000C0008000000 02.03.04.04 09:32:20 8 Zeilen ausgewählt Seite 1-10

Bewertung: Flashback Query Plus: Performant Zuverlässig Minus: Keine Probleme, keine Bugs festgestellt Seite 1-11

Flashback Transaction Query Matchen zu Transaktionen SQL> SELECT logon_user, table_name, table_owner, undo_sql FROM flashback_transaction_query WHERE table_owner='scott' -- xid = Transaktions-ID AND xid= '1E000C0008000000'; LOGON_USER TABLE_NAME TABLE_OWNER UNDO_SQL --------------- ---------------------------- ----------------- SMUELLER DEPT SCOTT insert into "SCOTT"."DEPT"("DEPTNO","DNAME","LOC") values ('50','UUuuups','Frankfurt'); Seite 1-12

Flashback Transaction Query Undo SQL nach mehreren Änderungen: SQL> 1 SELECT undo_sql 2 FROM flashback_transaction_query 3 WHERE table_owner = 'SCOTT' 4 AND table_name = 'DEPT' 5* ORDER BY commit_timestamp desc UNDO_SQL ----------------------------------------------------------------------------------------- insert into "SCOTT"."DEPT"("DEPTNO","DNAME","LOC") values ('50','UUuuups','Frankfurt');'UUuuups','Frankfurt'); update "SCOTT"."DEPT" set "DNAME" = 'MARKETING' where ROWID = 'AAALy6AAEAAAAAOAAA'; AALy6AAEAAAAAOAAA'; update "SCOTT"."DEPT" set "DNAME" = 'IT' where ROWID = 'AAALy6AAEAAAAAOAAA'; Seite 1-13

Bewertung: Flashback Transaction Query Plus: Erlaubt unkomplizierte Nachverfolgung von Änderungen Übersichtlich und einfaches generieren von UNDO SQL Statements Minus: Miserable Zugriffsgeschwindigkeit Bei Updates unzuverlässig Seite 1-14

Flashback Table und Flashback Drop Flashback Table und Flashback Drop stehen ab 10g zur Verfügung Flashback Table nutzt ebenfalls Undo TS. Flashback Drop basiert auf Recycle Bin. SQL> FLASHBACK TABLE dept 2 TO TIMESTAMP to_timestamp('02.03.2004 09:30'); SQL> FLASHBACK TABLE dept to BEFORE DROP; Seite 1-15

Flashback Drop im EM 10g Seite 1-16

Recycle Bin Anzeige der Objekte im Recycle Bin SQL> show recyclebin ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME ---------------- ------------------------------ ------------ ------------------- DEPT RB$$48444$TABLE$0 TABLE 2004-03-0202 10:29:40 Leeren des Recycle Bin DROP TABLE dept PURGE; -- Löscht die Tabelle endgültig PURGE RECYCLEBIN; -- Leert den Recycle Bin Seite 1-17

Flashback Table im EM Gestattet graphische Auswahl der Undo Optionen. Ist einfach zu bedienen. Derzeit sehr schlechte Antwortzeiten. Seite 1-18

Flashback Table im EM Seite 1-19

Bewertung: Flashback Table / Flashback Drop Plus: Sehr einfache Handhabung Keine Wiederherstellung aus Backup nötig Verkürzt Wiederherstellungszeiten von Stunden auf Minuten Minus: Flashback Table macht Probleme bei Nutzung paralleler Prozesse Flashback Drop stellt Indizes und Constraints nicht vollständig wieder her Seite 1-20

Flashback Database Wurde mit Oracle 10g eingeführt. Muss zuvor mit ALTER DATABASE FLASHBACK ON aktiviert worden sein. Größe des Flash Recovery Area sowie der DB Parameter db_flashback_retention_target bestimmen, wie weit zurückgesetzt werden kann. Flash Recovery Area kann für die Flashback Logs, die inkrementellen Backups und die archivierten Redo Logs verwendet werden. Seite 1-21

Flashback Database Umsetzen in den Flashback Mode -- Herunterfahren der Datenbank SHUTDOWN IMMEDIATE; -- Hochfahren in den Mount Modus STARTUP MOUNT; -- Flashback absetzen FLASHBACK DATABASE TO TIMESTAMP to_timestamp ('02.03.2004 09:30:00'); -- Datenbank öffnen ALTER DATABASE OPEN RESETLOGS; Seite 1-22

Flashback Konfiguration Im DBCA: Seite 1-23

Flashback Konfiguration Im Oracle 10g Enterprise Manager DBControl: Seite 1-24

Flashback und Standby Datenbanken Benutzerfehler konnte man in 9i und kann man auch in 10g schon durch ein delayed apply abfangen. In 10g ist Flashback Database eine gute Alternative Kombination aus Flashback Database und Standby Datenbank ist möglich: Flashback auf Standby mit alter database flashback on; aktivieren. Bei Benutzerfehler: flashback database to scn <scn_vor_benutzerfehler>; Standby DB readonly öffnen. Möglichkeiten: Failover auf Standby DB, Export der Benutzertabellen len oder Übertragen der gelöschten Daten auf Primary DB via Database Link. Seite 1-25

Standby DB Produktionsdatenbank Standby Datenbank Produktsionsinstanz Stand By Instanz DB Files Redo Log Files Netzwerk LGWR / ARCH synchron / asynchron Delay / NoDelay Redo Log Files DB Files Log Apply Seite 1-26

Standby Datenbanken Backup der Primär-Datenbank Insgesamt bis zu 9 Standby Datenbanken an einem Primärsystem Weitere DBs können kaskadierend an Standby Systeme angehängt werden Primärsystem kann Single Instanz oder RAC sein. Standby DB kann Single Instanz oder RAC sein. Seite 1-27

Standby Datenbank im EM 10g Seite 1-28

Parameter für Standby Datenbanken in 10g Parameter wurden erweitert, d.h. Initialisierungsparameter haben für alle Rollen Gültigkeit *.log_archive_config='dg_config=(darmstadt,frankfurt,rechenzentrum_bonn)' um_bonn)' *.log_archive_dest_1='location=/app/oracle/product/admin/prod/archive VALID_FOR=(ONLINE_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=darmstadt' t' *.log_archive_dest_2='location=/app/oracle/product/admin/prod/archive/stdchive/std VALID_FOR=(STANDBY_LOGFILES,STANDBY_ROLES) DB_UNIQUE_NAME=darmstadt' *.log_archive_dest_3='service=tdsphys LGWR async VALID_FOR=(ONLINE_LOGFILES, PRIMARY_ROLE)DB_UNIQUE_NAME=rechenzentrum_bonn' *.log_archive_dest_4='service=tdsrpt VALID_FOR=(ONLINE_LOGFILES, PRIMARY_ROLE) DB_UNIQUE_NAME=frankfurt Seite 1-29

Standby DB in 10g Failback auf Primärdatenbank möglich Daher: Keine Re-Instantiierung nötig Tests stehen noch aus Seite 1-30

Bewertung: Flashback Database Plus: Sehr einfache Handhabung Keine Wiederherstellung aus Backup nötig Verkürzt Wiederherstellungszeiten von Stunden auf Minuten Läßt sich hervorragend mit Standby DB kombinieren Minus: Keines bekannt Seite 1-31

Zusammenfassung Flashback Query Erste Schritte in 9i In 10g erweiterte Syntax Nutzt AUM Probleme: Keine bekannt Flashback Transaction Query Eingeführt in 10g Nutzt AUM Derzeit Problem bei Zugriff auf flashback_transaction_query Update Bug in Windows Beta Zugriffsgeschwindigkeit hat noch Optimierungspotential Seite 1-32

Zusammenfassung Flashback Table Eingeführt in 10g Nutzt ebenfalls AUM Probleme: Derzeit gelegentlich noch Probleme bei parallelem Zurücksetzen Workaround: Parallel Degree = 1 Flashback Drop Verfügbar ab 10g Nutzt Recycle Bin Probleme: Workaround: Bei Wiederherstellung von Foreign Key Constraints und Indizes Manuelles oder gescriptetes Wiederherstellen von Constraints und Indizes Seite 1-33

Zusammenfassung Flashback Database Ab 10g nutzbar Nutzt Flash Recovery Area und Archived Logs Funktionierte in unseren Tests tadellos Kann mit Standby DB hervorragend kombiniert werden Probleme: Keine bekannt Seite 1-34