zálohování a obnova dat - univerzita karlovakopecky/vyuka/oracle2/1213/zal.pdf · backup...
TRANSCRIPT
Tomáš Hladík
User-Managed Backup
RMAN (od v. 8.1)
Backup & recovery – záloha a obnovení
Media recovery – uvedení DB do konzistentního stavu
Data files
Control files
Redo log files
Archived
Current
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
Pokud nepoužíváme RMAN
Zálohování logických částí Utility Import / Export
Fyzických částí
kopírování
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
Při správě databází Oracle7 a starších
Pokud chceme jednotný způsob zálohování
Pro lepší pochopení
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
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;
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;
% 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;
1) STARTUP MOUNT
2) RESTORE DATABASE;
3) RECOVER DATABASE
4) ALTER DATABASE OPEN
BACKUP DATABASE VALIDATE;
BACKUP VALIDATE DATABASE ARCHIVELOG ALL;
RESTORE TABLESPACE TBS_1 VALIDATE
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;
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#
Control file
ALTER DATABASE BACKUP CONTROLFILE …
Datové soubory + logy
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
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;
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;
http://docs.oracle.com/cd/A87860_01/doc/server.817/a76993/osbackup.htm
http://docs.oracle.com/cd/B10501_01/server.920/a96572/intro.htm
http://docs.oracle.com/cd/B19306_01/backup.102/b14194/rcmsynta009.htm
http://docs.oracle.com/cd/B19306_01/backup.102/b14191.pdf