Merhaba,
Bu yazımda Oracle Veritabanı mimarisini anlatmaya devam edeceğim. İlk yazıdan itibaren paylaştığım Oracle veritabanı mimarisinin şeklini aşağıda tekrar paylaşıyorum.
SMON ( System Monitor ): Oracle Instance sını kurtarmakla görevli önemli bir process tir. Bu process çalışmıyorsa eğer veritabanı down olmuş demektir. Oracle veritabanı istenmedik bir şekilde tutarsız bir şekilde kapandığında bu process veritabanının açılışı sırasında online redo log dosyalarını kullanarak instance sın tutarlı bir şekilde açılmasını sağlar. Aniden öldürülen transaction ların kurtarılmasını da yine bu process sağlar. Bu process i işletim sistemi üzerinden aşağıdaki gibi görebiliriz.
bash-4.1$ ps -ef | grep smon oracle 9055 1 0 13:38 ? 00:00:00 ora_smon_TESTDB oracle 9250 8803 0 14:24 pts/0 00:00:00 grep smon bash-4.1$
Bu process i işletim sistemi üzerinden öldürdüğümüz zaman aşağıdaki gibi veritabanı ani bir şekilde kapatılır.
bash-4.1$ ps -ef | grep smon oracle 9055 1 0 13:38 ? 00:00:00 ora_smon_TESTDB oracle 9258 8803 0 14:28 pts/0 00:00:00 grep smon bash-4.1$ kill -9 9055 bash-4.1$ ps -ef | grep smon oracle 9260 8803 0 14:29 pts/0 00:00:00 grep smon bash-4.1$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Fri Oct 4 14:29:08 2013 Copyright (c) 1982, 2011, Oracle. All rights reserved. Connected to an idle instance. SQL>
PMON ( Process Monitor ): Bu process te başarısız olan yada aniden sonlandırılan process lerin kullandığı sistem kaynaklarını serbest bırakıp sunucuya teslim eder. Ayrıca Oracle instance sının listener ile iletişim kurmasını sağlar. Bu process i işletim sistemi üzerinde aşağıdaki gibi görebiliriz.
bash-4.1$ ps -ef | grep pmon oracle 9423 1 0 14:37 ? 00:00:00 ora_pmon_TESTDB oracle 9559 8803 0 14:37 pts/0 00:00:00 grep pmon bash-4.1$
RECO ( Recoverer Process ): Bu process veritabanında çeşitli sebeplerden dolayı yarım kalan işlemlerin tamamlanmasını sağlar.
DBWn ( Database Writer ): Yukardaki şekildeki bağlantıdan da anlaşılabileceği üzere DBW process i Datafile larla Database Buffer Cache arasında mekik dokuyan bir processdir. Yani Bir transaction başladığı zaman ilgili bloklar buffer cache de yok ise datafile lardan bu blokları Buffer cache e DBW processi taşır. Aynı şekilde Datafile lara yazılması gereken dirty blokların Buffer cache den Datafile lara yazılması görevinide bu process yürütür. Oracle veritabanı ilk kurulumda default olarak 1 tane db_writer_process i oluşturur ve bu parametrenin maksimum değeride 36 dır. Bu parametreyi aşağıdaki gibi sorgulayabilirsiniz.
bash-4.1$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Fri Oct 4 13:39:44 2013 Copyright (c) 1982, 2011, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> show parameter db_writer_process NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_writer_processes integer 1 SQL>
Bu process ler aşağıdaki olaylar gerçekleştiği zaman çalışır ve Buffer Cache deki değişen bloklar data file lara yazar.
- Database buffer cache de alan dolduğu zaman en eski bloklardan başlanarak datafile lara yazma işlemi başlar.
- Checkpoint process i tetiklendiği takdirde.
- Bir tablespace read-only moduna getirildiği zaman.
- Bir tablespace offline duruma getirildiği zaman.
- Herhangi bir tablo drop yada truncate edildiği zaman.
Buffer cache deki verilerin datafile lara yazılmasını manuel olarak bizde aşağıdaki kod ile sağlayabiliriz.
SQL> Alter system checkpoint;
LGWR ( Log Writer Process ): Bu process te tıpkı DBW process i gibi tampon bellekteki verileri fiziksel dosyalara yazan bir process tir. Bu process Redo log buffer ile Online Redo log files ları arasında çalışır. Redo log buffer daki transaction bilgilerini sırasıyla Online redo log files lara yazar. LGWR process i aşağıdaki durumlar zuhur ettiğinde Redo log buffer daki verileri Online Redo log files lara yazar.
- Kullanıcı bir transaction sonucunda Commit gerçekleştirdiğinde
- Online Redo log grupları switch ettiği zaman (Log switch)
- Her 3 saniyede 1
- Ortalama 1 mb lık Redo log oluştuğu zaman
- Redo log buffer alanının 3 te 1 i dolduğu zaman
CKPT ( Checkpoint Process ): Bu process tetiklendiği zaman Database Writer ( DBW ) processi, Database buffer cache de bulunan dirty bloklarını datafile lara yazar ve aynı zamanda da Datafile ların header bilgilerini de günceller. Bu process çok sık aralıklarla tetiklenirse eğer sürekli olarak diske yazma gerçekleşeceği için Veritabanında yavaşlamalar görülür, nadir olarak çalıştığı takdirdeyse değişen bloklar datafile lara yazılmadığı için ve değişen blok sayısı biriktiği için Oracle veritabanı instance sı ani bir şekilde crash olduğu zaman instance sı kurtarmak biraz zaman alacaktır. Bu process in tetiklenme sıklığını belirlemek yukardaki sebeplerden dolayı önemlidir.
ARCn ( Archiver process ): Bu process veritabanımız eğer Arşiv modundaysa aktifleşen bir processdir. Online Redo log grupları dolduğu zaman log switch işlemi sırasında dolan redo log dosyasının kopyasının arşiv dosyası olarak kopyalayan process tir. Bu process disaster recovery kurulumunda Disaster yada standby sunucusuna Redo log dosyalarının gönderilmesi işleminide sağlar.
Böylece Oracle Veritabanı Mimarisini anlattığım yazı serimi bu yazıyla birlikte tamamlıyorum şimdilik Esen Kalın.
Oracle Exadata SQL Server Goldengate Weblogic EBS ve Linux konusunda aşağıdaki konularda 7×24 Uzman Danışmanlara yada Eğitimlere mi
İhtiyacınız var mehmet.deveci@gridgroup.com.tr adresine mail atarak Bizimle iletişime geçebilirsiniz.
– Oracle Veritabanı Danışmanlığı
– Oracle Veritabanı Bakım ve Destek
– Exadata Danışmanlığı
– Exadata Bakım ve Destek
– SQL Server Veritabanı Danışmanlığı
– SQL Server Veritabanı Bakım ve Destek
– Goldengate Danışmanlığı
– Goldengate Bakım ve Destek
– Linux Danışmanlığı
– Linux Bakım ve Destek
– Oracle EBS Danışmanlığı
– Oracle EBS Bakım ve Destek
– Weblogic Danışmanlığı
– Weblogic Bakım ve Destek
– Oracle Veritabanı Eğitimleri
– Oracle VM Server Danışmanlığı
– Oracle VM Server Bakım ve Destek
– Oracle EPPM Danışmanlığı
– Oracle EPPM Bakım ve Destek
– Oracle Primavera Danışmanlığı
– Oracle Primavera Bakım ve Destek
– Oracle Eğitimleri
– SQL Server Eğitimleri
– Goldengate Eğitimleri
– Exadata Eğitimleri
– Linux Eğitimleri
– Oracle EBS Eğitimleri
– Oracle VM Server Eğitimleri
– Weblogic Eğitimleri
– Oracle EPPM Eğitimleri
– Oracle Primavera Eğitimleri