Anasayfa > RMAN Backup and Recovery > RMAN Teknik Referans

RMAN Teknik Referans

RMAN yedek alma, silme, raporlama, listeleme, sıkıştırma, şifreleme, doğrulama, crosschek kontrol gibi hızlı erişim amaçlı oluşturmuş olduğum teknik referans dökümanımı sizlerle paylaşmak istiyorum. Bu dökümanı ara ara güncelliyor olacağım. RMAN komutlarını sınıflandırarak genel başlıklar altında toparlamaya çalıştım. Faydalı olması dileğiyle.

Yedek raporlama işlemleri

 Backup gerekiyor mu raporu:

RMAN>report need backup;

Obsolete backup raporu:

RMAN>report obsolete;

Yedek alma işlemleri
Tüm veritabanının varsayılan konfigürasyona göre yedeğini almak:

RMAN>backup database;
veya
RMAN> backup incremental level 0 database;

Tüm veritabanının arşiv loglar ile birlikte yedeğini almak:

RMAN>backup database plus archivelog;

Controlfile yedeğini almak:

RMAN>backup as copy current controlfıle;

Tüm veritabanının arşiv loglar ile birlikte yedeğini almak ve yedeği alınan arşiv logları silmek:

RMAN>backup database plus archivelog delete input;

Belirli bir tablespace i yedek almak:

RMAN>backup as backupset
format '/backup/df_%d_%s.bck'
tablespace users;

Belirli bir veri dosyasını yedek almak:

RMAN>backup datafile 5;

Hergün değişen blokları yedeklemek (Differential Incremental Backup):

RMAN> backup incremental level 1 database;

Son full yedekten sonra tüm blokları yedeklemek (Cumulative Incremental Backup):

RMAN>backup incremental level 1 cumulative database;

Image Copy yedek almak:

RMAN>backup as copy database;

Yedek silme işlemleri
Backup sıra nosuna göre silme:

RMAN>delete backuppiece 101;

Dosya adına göre silme:

RMAN>DELETE CONTROLFILECOPY '/tmp/control01.ctl';

Arşiv dosyalarını silme:

RMAN>DELETE NOPROMPT ARCHIVELOG UNTIL SEQUENCE = 300;
RMAN>DELETE NOPROMPT ARCHIVELOG ALL;

Not:NOPROMPT, yedek silme esnasında Yes/No onay sorusunu sormaz.

Tag verilen yedeği tag adına göre silme:

RMAN>DELETE BACKUP TAG='before_upgrade';

Bütün yedekleri silme:

RMAN>DELETE BACKUP;

Tape kasete yedeği alınmış yedeklerin disk üzerinden silinmesi:

RMAN>DELETE ARCHIVELOG ALL BACKED UP 3 TIMES TO sbt;

Image copy yedeği silme:

RMAN>DELETE COPY;

Obsolete yedek silme
RMAN kurtarma işlemi için gerekli olmayan yedekleri obsolete olarak işaretler. (redundancy veya recovery window set edilmiş ise)

Obsolete yedekleri silmek için:

RMAN>delete obsolete;

3 gün öncesi obsolete yedekleri silmek için:

RMAN> delete obsolete recovery window of 3 days;

Expired yedek silme

RMAN>delete expired backup;

Crosscheck kontrolü
Crosscheck komutu, RMAN repository de bulunan yedeğin disk veya tape üzerinde fiziksel olup olmadığını kontrol eder. Eğer dosya disk veya tape üzerinde fiziksel olarak yoksa (işletim sistemi üzerinden silinmiş olabilir) RMAN repository de ilgili yedeği “EXPIRED” olarak işaretler. Sonrasında, “DELETE EXPIRED” komutuyla RMAN repository den yedek bilgileri silinebilir.

Arşiv dosyaları crosscheck ile kontrol etme:

RMAN>crosscheck archivelog all;

Alınan bütün yedeği crosscheck ile kontrol etme:

RMAN>crosscheck backup;

Image copy yedeği crosscheck ile kontrol etme:

RMAN>crosscheck copy;

Tag verilen yedeği crosscheck ile kontrol etme:

RMAN>crosscheck backuppiece tag = 'nightly_backup';

Yedek listesini görmek

RMAN>list backupset of database;

RMAN>list backup;

Yedek önizlemesini görmek (İçerisinde hangi objeler olduğu listelenir):

RMAN> restore database preview;

RMAN> restore tablespace users preview;

Konfigürasyon işlemleri

Konfigürasyon ayarlarını görmek:

RMAN>show all;

Varsayılan konfigürasyona dönmek:Sonuna “clear” ifadesi yazılır

RMAN>configure backup optimization clear;

Set edilmiş bir konfigürasyonu görmek:Başına “show” ifadesi yazılır

RMAN>show controlfile autobackup format;

Bir ayarı konfigüre etmek:Başına “configure” ifadesi yazılır

RMAN>configure device type disk backup type to copy;

RMAN>configure retention policy to recovery window of 7 days;

RMAN>configure retention policy to redundancy 3;

Yedek ve Geri Dönme işlemlerini doğrulama (validate)
Alınan tüm yedeği doğrulamak:

RMAN>backup validate;

Arşiv dosyaların yedeğini doğrulamak:

RMAN>backup validate database archivelog all;

Tüm veritabanı geri dönme işlemini doğrulama:

RMAN>restore database validate;

Controlfile geri dönme işlemini doğrulama:

RMAN>restore controlfile validate;

Spfile geri dönme işlemini doğrulama:

RMAN>restore spfile validate;

Belirli bir tablespace geri dönme işlemini doğrulama:

RMAN>restore tablespace users validate;

Yedek sıkıştırma işlemleri (11g ile geldi)
Backupseti sıkıştırma:

RMAN>backup as compressed backupset database;

Yedek şifreleme işlemleri
Encryption set etme:

RMAN> Set  encryption identified by passwprd;

Decryption set etme:

RMAN> Set  decryption identified by passwprd;

Enable & Disable Block change tracking
Sadece değişen blokları takip etmek için bct aktif edilmesi:

SQL>alter database enable block change tracking using file '/rman_bkups/change.log';

Block change tracking iptal edilmesi:

SQL>alter database disable block change tracking;

RMAn yedeğin debug edilmesi ve trace alınması

$rman target=/ debug=all trace=rman.trc

Yedeğin Log dosyasını oluşturmak

$export NLS_DATE_FORMAT=’dd.mm.yyyy hh24:mi:ss’;

$rman target=/ log=rman.log

Recovery area size bilgisini görmek

select name
,        floor(space_limit / 1024 / 1024) "Size MB"
,        ceil(space_used  / 1024 / 1024) "Used MB"
from   v$recovery_file_dest
order by name
/

RMAN Catalog DB işlemleri

  1. Catalog DB üzerinde kullanıcı oluşturulur.
  CREATE USER rman IDENTIFIED BY rman
  TEMPORARY TABLESPACE temp
  DEFAULT TABLESPACE users
  QUOTA UNLIMITED ON users;
  1. Recovery Catalog owner yetkisi verilir
GRANT RECOVERY_CATALOG_OWNER TO rman;
  1. Catalog veritabanına bağlanılıp catalog oluşturulur.
rman CATALOG rman/rman@catalog

RMAN> create catalog;

  1. Yedeği alınacak target veritabanı register edilir.
rman TARGET sys/oracle@test10g CATALOG rman/rman@catolog

RMAN> register database;

RMAN de kanal açma ve objeleri manuel kanallara dağıtma

Örnek script:

RUN
{
  ALLOCATE CHANNEL c1 DEVICE TYPE sbt PARMS="ENV=(BACKUP_SERVER=tape_server1)";
  ALLOCATE CHANNEL c2 DEVICE TYPE sbt PARMS="ENV=(BACKUP_SERVER=tape_server2)";
  ALLOCATE CHANNEL c3 DEVICE TYPE sbt PARMS="ENV=(BACKUP_SERVER=tape_server3)";
  BACKUP
   (DATAFILE 1,2,3
    CHANNEL c1)
   (DATAFILECOPY '/tmp/system01.dbf', '/tmp/tools01.dbf'
     CHANNEL c2)
   (ARCHIVELOG FROM SEQUENCE 100 UNTIL SEQUENCE 102 THREAD 1
     CHANNEL c3);
}

Talip Hakan Öztürk

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: