Pages

15 Mart 2012 Perşembe

Standalone Oracle 10g veritabanının 10g RAC veritabanına dönüştürülmesi

Standalone Oracle 10g veritabanın Oracle 10g RAC veritabanına dönüştürülmesi işlemi öncesinde tüm düğümlerde clusterware yazılımının kurulmuş olması ve sunucuların RAC yapısında hizmet verecek şekilde fiziksel olarak yapılandırılmış olması gerekmektedir. Bu kurulum öncesi işlemlerin tamamlandığından emin olunduktan sonra daha önceden stand alone olarak hizmet veren bir Oracle 10g veritabanının RAC veritabanına dönüştürme işlemi için aşağıdaki adımların uygulanması yeterli olacaktır.

12 Mart 2012 Pazartesi

Veritabanındaki en son bekleme olaylarının analizi

Oracle 11g veritabanında en son bekleme olaylarını gerek kullanıcılar, gerek SQL komutları ve gerekse objeler bazında gözlemlemek ve analiz etmek için V$ACTIVE_SESSION_HISTORY görünümü kullanılabilir. Bu sistem görünümü ile veritabanında oturumların en son bekleme olayları ile ilgili istatistik bilgilerine erişilebilmektedir.  Bu görünümün V$SESSION ve DBA_USERS gibi sistem görünümü ve tabloları ile birleşimi sonucu elde edilen ve faydalı olacağına inandığım bazı analiz sorguları aşağıda yer almaktadır;

9 Mart 2012 Cuma

Oracle 11.2.0.2 Clusterware ortamında kayıp OCR ve voting disklerin yedekten geri yüklenmesi

Bu yazıda Oracle 11.2.0.2 Clusterware platformunda OCR ve voting diskin kaybedildiği durumda sisteme nasıl geri yükleneceği anlatılmaktadır. Ocssd.bin başlatıldığında, GPnP profili, network ve voting disklerde var olmalıdır. Eğer minimum sayıda gereksinim duyulan voting dosyaları varolmazsa , bu durumda ocssd.bin başlatılamaz.  

OCR varolmadan crsd prosesi başlatılamaz ve ocssd.bin de aktif olmaz.  OCR, CRS tarafından kullanılır, bu da OCR kayıp olduğunda crsd.bin in aktif olamayacağı anlamına gelmektedir. CRSD aktif olmazsa, bu sorunlu düğüm kümeye dahilde olamaz.

Oracle Clusterware her 4 saatte bir OCR'nin yedeğini almaktadır. OCR içinde voting diskin yedeği bulunmaktadır. Bu sebeple voting diski geri yüklemek için var olan bir OCR yedeği yeterlidir. Şimdi bu geri yükleme olayını, OCR'nin yer aldığı ASM disk grubundaki(senaryomda +DATA) disklerde fiziksel bir çökme nedeniyle erişilemez olduğu senaryo çerçevesinde adım adım işleyelim. İlk etapta küme katmanını çalıştırarak sorunun olduğunu gözlemleyelim.

[root@rac1 ~]# crsctl start cluster
CRS-2672: Attempting to start ‘ora.cssdmonitor’ on ‘rac1′
CRS-2676: Start of ‘ora.cssdmonitor’ on ‘rac1′ succeeded
CRS-2672: Attempting to start ‘ora.cssd’ on ‘rac1′
CRS-2672: Attempting to start ‘ora.diskmon’ on ‘rac1′
CRS-2676: Start of ‘ora.diskmon’ on ‘rac1′ succeeded
CRS-2674: Start of ‘ora.cssd’ on ‘rac1′ failed

Bu adımda neyin yanlış olduğunu teyit etmek için log dosyalarına bakılması gerekmektedir.  Clusterware'nin alert.log dosyasında aşağıdaki gibi bir hata mesajına rastlanılacaktır.

8 Mart 2012 Perşembe

Bilgi İşlem Merkezi Yöneticileri (BIMY) Semineri 2012

Bilişim Sektörünün değerli çalışanları, sektörümüze katkı sağlayan bilişim dostları,

Bilindiği üzere Türkiye Bilişim Derneği, Bilişim Sektörünün gelişmesi amacıyla tam 40 yıldır çalışmalarına aralıksız devam etmektedir. Bu kapsamda her yıl düzenlenen ve gelenekselleşen TBD etkinlikleri sizlerin de katkısıyla markalaşmış, sektörel bir sahiplikle sektör zirvesi ve şenliği haline gelmiştir.

Bilgi Teknolojilerinde yaşanan değişimler toplumların yaşam biçimlerini, kurumların ve sektörlerin birbirleriyle iletişimlerini etkilemektedir. Sektörlerin birbirleriyle etkileşimi yerel düzeyde rekabet koşullarını artırmakta, istihdam açısından önemli katkılar sağlanmaktadır. Bu doğrultuda Bilişim Sektöründe çalışan üst ve orta düzey yöneticilerin mesleki gelişimi ve dayanışmalarını geliştirmek amacıyla ana teması “Bilişim Teknolojileri ve Gelecek Öngörüleri” olan “Bilgi İşlem Merkezi Yöneticileri Semineri (BİMY)” düzenlenecektir. Bu yıl 19.sunun yapılması planlanan BİMY etkinliği 29 Mart - 01 Nisan 2012 tarihleri arasında Gloria Golf Resort Hotel' de gerçekleştirilecektir.

Detaylı bilgi ve kayıt için : http://bimy.tbd.org.tr/

7 Mart 2012 Çarşamba

Oracle 11.2.0.2 sürümünde Flashback Transaction Query

Flashback Transaction Query, işlem seviyesinde veritabanında yapılan değişiklikleri göstermeyi sağlayan kullanışlı bir Oracle aracıdır. Flashback Transaction Query, bir işlem tarafından yapılan tüm değişikliklerin görülmesini sağlayan bir SQL eklentisidir. Örneğin;

SELECT UNDO_SQL
FROM FLASHBACK_TRANSACTION_QUERY
WHERE XID = '000200030000002D';

Yukardaki komut bu işlemde sonuçlanan tüm değişiklikleri göstermektedir. İlaveten,  yerini dolduran tüm SQL komutlarıda döner ve bu işlem tarafından tüm satırlara yapılan değişiklikler geri alınabilir.  Flashback Transaction Query gibi hassas bir araç kullanarak, veritabanı yöneticileri ve uygulama geliştiriciler veritabanı veya uygulamadaki mantıksal problemleri kesin olarak teşhis edip gerekli düzeltmeleri yapabilirler.  

5 Mart 2012 Pazartesi

Clustering factor hakkında bir inceleme

ERP alt sisteminde geçtiğimiz aylarda indeksler için yapılan iyileştirme çalışması sonucunda, bazı indekslerin hala oldukça yüksek “clustering_factor” değeri ürettiğini gözlemledim. Aşağıda bu sorunlu indekslerden birisi yer almakta.

            BTREE   LEAF    DISTINCT  CLUSTERING  INDEX      TABLE     TABLE
INDEX NAME  LEVEL  BLOCKS   KEYS      FACTOR      NUM ROWS   NUM BLKS  NUM ROWS
----------  -----  ------  ---------- ----------  ---------- --------  ----------
CUSTID_IDX   3     778150  77,842,100  17,163,350  77,842,100 865,805  77,043,200
…         
Yukardaki CUSTID_IDX indeksi gibi, oldukça yüksek clustering_factor değerini -aynen- muhafaza eden indeskler yüzünden, bu indeksler üzerinde aralıklı taramaların(index range scan) kullanıldığı sorgular çok yavaş çalışmaktaydı, çünkü tablodan oldukça fazla sayıda blok ziyaret edilmekteydi. Peki böyle bir durumda ne yapılması gerekmekte?

Bu soru, bazı önemli noktaların tekrardan gözden geçirilmesini zorunlu kılmaktadır. Başlangıç detayı olarak eklenmesi gereken nokta; indeksteki satır sayısının tablodaki satır sayısından daha fazla olmasıdır. Bununda sebebi, istatistik toplamasında %100 altında bir örnekleme değerinin ve “cascade” seçeneğinin kullanılmış olmasıdır. Oracle, sıklıkla indekslerde tabloda belirtilen örnekleme değerinden daha geniş bir değer kullanmaktadır.