Top Banner
Tomáš Hladík
21

Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Jul 03, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Tomáš Hladík

Page 2: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

User-Managed Backup

RMAN (od v. 8.1)

Page 3: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Backup & recovery – záloha a obnovení

Media recovery – uvedení DB do konzistentního stavu

Data files

Control files

Redo log files

Archived

Current

Page 4: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Konzistentní zálohy

Z uzavřené databáze

Při zavírání nedošlo k chybě

Nepotřebuje media recovery

Nejsou třeba redo logy

Page 5: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Pokud nepoužíváme RMAN

Zálohování logických částí Utility Import / Export

Fyzických částí

kopírování

Page 6: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Backup Object Backup Method Example

Datafiles Operating system utility % cp df3.f df3.bak

Archived logs Operating system utility % cp log_1_23.arc log_1_23.bak

Control files SQL statement SQL> ALTER DATABASE BACKUP CONTROLFILE TO cf1.bak

Initialization parameter file

SQL statement SQL> CREATE PFILE = init.ora.bak FROM SPFILE;

Network and password files

Operating system utility % cp tnsnames.ora tnsnames.bak C:\> copy tnsnames.ora tnsnames.bak

Logical objects (tables, indexes, PL/SQL units)

Export utility % export SYSTEM/manager TABLE=hr.emp FILE=emp.dmp

Page 7: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Při správě databází Oracle7 a starších

Pokud chceme jednotný způsob zálohování

Pro lepší pochopení

Page 8: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Pokud můžeme databázi vypnout

1) SHUTDOWN NORMAL| IMMEDIATE| TRANSACTIONAL

2) % cp /disk1/oracle/dbs/*.dbf /disk2/backup

3) % cp /disk1/oracle/dbs/*.cf /disk2/backup

4) % cp /disk1/oracle/network/admin/*.ora /disk2/backup

5) % cp /disk1/oracle/rdbms/admin/*.ora /disk2/backup

6) STARTUP

Page 9: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

1) SELECT TABLESPACE_NAME, FILE_NAME FROM SYS.DBA_DATA_FILES WHERE TABLESPACE_NAME = 'users';

2) ALTER TABLESPACE users BEGIN BACKUP;

3) % cp /oracle/dbs/tbs_21.f /oracle/backup/tbs_21.backup

4) % cp /oracle/dbs/tbs_22.f /oracle/backup/tbs_22.backup

5) ALTER TABLESPACE users END BACKUP;

6) Zálohování logů (současných i archivovaných) 1) ALTER SYSTEM ARCHIVE LOG CURRENT;

Page 10: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Spustíme příkazem „rman“ v databázi

Pro připojení je potřeba SYSDBA oprávnění

Základní příkazy

BACKUP DATABASE (plus archivelog);

LIST BACKUP OF DATABASE;

Page 11: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =
Page 12: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

% rman TARGET SYS/oracle@trgt CATALOG rman/cat@catdb

RMAN> BACKUP DATABASE;

RMAN> SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';

RMAN> SHOW ALL;

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

RMAN> LIST BACKUP;

Page 13: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

1) STARTUP MOUNT

2) RESTORE DATABASE;

3) RECOVER DATABASE

4) ALTER DATABASE OPEN

Page 14: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

BACKUP DATABASE VALIDATE;

BACKUP VALIDATE DATABASE ARCHIVELOG ALL;

RESTORE TABLESPACE TBS_1 VALIDATE

Page 15: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

RMAN> STARTUP FORCE MOUNT; RMAN> RESTORE DATABASE; RMAN> RECOVER DATABASE DELETE ARCHIVELOG; RMAN> ALTER DATABASE OPEN;

RMAN> SQL 'ALTER TABLESPACE users OFFLINE

IMMEDIATE'; RMAN> RESTORE TABLESPACE users; RMAN> RECOVER TABLESPACE users; RMAN> SQL 'ALTER TABLESPACE users ONLINE';

RECOVER DATABASE UNTIL TIME '2012-11-19:12:00:00'

USING BACKUP CONTROLFILE;

Page 16: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Fyzické poškození datových souborů

SELECT * FROM V$RECOVER_FILE;

Jména odpovídacích souborů a tablespace

SELECT r.FILE# AS df#, d.NAME AS df_name, t.NAME AS tbsp_name, d.STATUS, r.ERROR, r.CHANGE#, r.TIME

FROM V$RECOVER_FILE r, V$DATAFILE d, V$TABLESPACE t

WHERE t.TS# = d.TS#

AND d.FILE# = r.FILE#

Page 17: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Control file

ALTER DATABASE BACKUP CONTROLFILE …

Datové soubory + logy

Page 18: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Pro obnovení části DB

1) ALTER TABLESPACE users OFFLINE IMMEDIATE;

2) Zkopírovat dané soubory ze zálohy

3) RECOVER TABLESPACE users

4) ALTER TABLESPACE users ONLINE

Obnovení celé DB

Nutně potřebujeme datové soubory a logy

Page 19: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

Aktualizace datových souborů Díky (archivovaným) aktuálním redo logům

Kompletní obnova

1) STARTUP MOUNT

2) SELECT NAME,STATUS FROM V$DATAFILE;

3) ALTER DATABASE DATAFILE '/oracle/dbs/tbs_10.f' ONLINE;

4) RECOVER (AUTOMATIC) DATABASE RECOVER TABLESPACE tsname

5) ALTER DATABASE OPEN;

Page 20: Zálohování a obnova dat - Univerzita Karlovakopecky/vyuka/oracle2/1213/zal.pdf · BACKUP CONTROLFILE TO cf1.bak Initialization parameter file SQL statement SQL> CREATE PFILE =

1) STARTUP MOUNT

2) SELECT NAME,STATUS FROM V$DATAFILE;

3) ALTER DATABASE DATAFILE '/oracle/dbs/tbs_10.f' ONLINE;

4) RECOVER DATABASE UNTIL 1. CANCEL

1. Po provedení je třeba vykonat příkaz CANCEL.

2. TIME '2012-11-19:12:00:00';

3. CHANGE 10034;

5) ALTER DATABASE OPEN RESETLOGS;