2012/12/24

Oracle Fiziksel Yapısı

Oracle üzerinde kurulduğu yapı "Fiziksel yapı" ve "Mantıksal yapı" olmak üzere ikiye ayrılmıştır.Bu yazıda fiziksel yapıya neler aittdir ondan bahsedeceğim.Veritabanı,tablolarındaki verileri ve veritabanına ait gerekli yapılandırma dosyalarını saklamak üzere fiziksel diskler üzerinde depolanan dosyalar kullanılır.Bu dosyalar siz silmediğiniz veya üzerinde depolandıkları diskte bir hata meydana gelmediği sürece varlıklarını sürdürürler.Fiziksel yapıyı oluşturan bileşenler şunlardır;

  • Datafiles
  • Controlfiles
  • Redo log files
  • Archive log files
  • Parameter files
  • Alert ve Trace log files
  • Backup files  



1-)Datafiles:
  Her oracle veritabanı bir yada  daha fazla sayıda datafile içerebilirler.Tablo index gibi mantıksal yapıların barındığı fiziksel bilgileri tutar.Belli başlı özellikleri şunlardır;
   *Datafile dosyaları sadece Oracle veritabanı için anlam taşırlar.İşletim sistemleri bu dosyaların ne işe yaradığı konusunda bir fikre sahip değildir.
   *Bir datafile sadece bir veritabanı ile ilişkilendirilir.
   *Bir datafile mantıksal yapılardan olan tablespacelerden oluşur.
   *Gerektiğinde kendini otomatik büyütme özellikleri vardır.
Çalışmakda olan bir oracle veritabanını kullandığı datafile dosyalarını görebilmek için  V$datafile isimli view nesnesinden yararlanılır.
     *SQL>  SELECT NAME FROM V$DATAFİLE;
Datafile dosyalarının sağlık durumunu ve çalıştıklarını denetlememiz gerekebilir.
     *SQL>  SELECT NAME,STATUS FROM V$DATAFİLE;
Her bir datafile dosyası için durum online olmalıdır.Eğer Recover bilğisine rastlarsanız ilgili dosyanın recoverden geçerek kurtarılması gerekecekdir.
2-)Controlfile;
Kullanılmakda olan datafıle dosyalarının,redo log,archivelog dosyalarının disk üzerinde konumlarını ve bilgilerini tutar.Bu dosyada ki bilgiler çok önemli olduğu için oracle bu dosyayı çoğullama özelligine sahipdir.
Eğer veritabanı yedeklemesi RMAN(Recovery Manager) ile yapılıyorsa,yedek dosyalarının konumları ve yedek alınma tarih-saat bilgisi gibi verilerde controlfile dosyaso içinde saklıdır.Her oracle instance başladığında bu dosyada okunur yani datafile yada redo log dosyası database tanımlandığı anda Oracle control file güncellenir.
Controlfile dosyalarınızı şu sql ile görebilirsiniz;
     *SQL>  SELECT NAME FROM V$CONTROLFİLE;
3-)Redo log file;  
Veriye yapılan tüm değişiklik işlemleri tutmakla yükümlüdür.Datafile görevini yapmadığı durumlarda redo log dosyalarında bu işlemler görülebilir.Redo log dosyalarında çoğullama imkanı vardır.Bu dosyanın amacı özetle sistem yada donanım kaynaklı olası hatalarda datafile kalıcı şekilde yazılmayan bilgileri kurtarmakdır.Controlfile dosyasından farklı olarak,online redo log dosyalarından biri veya birkaçı zarar görse bile oracle veritabanı çalışmaya devam edecekdir.
4-)Archive log file;
Oracle veritabanı archivelog da çalışıyorsa arka plan işlemleri üzerinde yazmayı bitirdiği online redo log dosyaları arşivlenerek başka bir konuma kopyalanır.Veritanı archivelog modda ise veri kaybı minimize edilir.
5-)Parametre file(PFİLE);
Oracle 11g database başlatılırken parametre dosyasındaki bilgileri okuyarak instance yapılanmasını gerçekleştirir.Yani SGA ve PGA bellek miktarı,arka plan işlemleri,veritabanı adı,datafile dosyalrı için ayarlanan disk konumu vb. gibi farklı bilgiler bu dosyadan okuyarak oracle instance bu değerlere uygun başlatılır."init.ora" bir parametre filedir. Ayrıca 9i sürümü ile birlikte "server parameter file" (SPFİLE) kavramı geldi.SPFİLE PFİLE den oluşturulabilir.Bu dosya pfile gibi text dosyası değil binary bir dosyadır ve sadece "alter system set" komutu ile değişir.Spfile kullanmak pfile kullanmakdan daha avantajlı çünkü;
     *RMAN ile backup alınabilir.
     *İnsan kaynaklı hataların önüne geçer.
Pfile den spfile yada spfile den pfile oluşturmak mümkündür.
      * Create pfile from spfile;
      * Create spfile from pfile;
      * Create spfile= '/oradata/spfileORCL.ora ' from pfile= '/oradata/initORCL.ora ';
6-)Alert log ve Trace log file;
Oracle veritabanında gerçekleştirilen değişiklikler ve oluşturulabilecek hatalar trace log dosyasına kaydedilir.Veritabanının açılması,kapatılması,instance parametreleriyle ilgili değişiklik vb. bilgiler burada tutar. Alert log dosyaları ise özel dosyalardır. Veritabanının hata ve mesajını krolojik sırada tutar. 
    

İyi okurlar.

Hiç yorum yok:

Yorum Gönder