Failed Logonları Nasıl Tespit Edebiliriz …

Daha önce yine bu konuyla bağlantı olduğunu düşündüğüm 2 tane yazı yazmıştım.

http://www.kamilturkyilmaz.com/2011/01/21/bilinen-adiyla-logon-trigger/
http://www.kamilturkyilmaz.com/2011/01/22/sisteme-connect-olan-%E2%80%93-olmayan-kullanicilari-tespit-etme/

Bugün sisteme girmeyi deneyip, bir şekilde giremeyen hata alan sessionları nasıl tespit edebiliriz ondan bahsetmek istiyorum. Öncelikle hata alan sessionlar ile ilgili 2 farklı durum karşımıza çıkabilir. Birincisi sisteme girmeyi deneyen user ora-01017 (invalid username/password) hatası alabilir, ikinci olarak ora-01031 (insufficient privilige) hatası alabilir. Bu tarz durumlarda hangi userın bu hatayı aldığını tespit etmek içinde aşağıdaki trigger’ ı kullanabilirsiniz ;
Continue reading

ORA-04031:unable to allocate xxxx bytes of shared memory ….

Bu konuya nereden geldik öncelikle biraz ondan bahsetmek istiyorum. 11gr2 upgrade’ lerimiz sonrasında kimi test ortamlarımızdan aşağıdaki alert logda detayını görebileceğiniz gibi sıkça ORA-04031 hataları görmeye başlamıştık. Sorunu aslında ilk başlangıçda utlrp’ yi çalıştırdığımızda aldığımızı farkettik. Aslında hatada kendi içerisinde problemin kaynağını işaret ediyordu. Shared memoryde bir darboğaz yaşanıyor ama neden utlrp çalışırken bu hatayı alıyorduk ?

Biraz araştırınca problemin utlrp ile ilişkisinide bulmuş olduk. Problemin asas kaynağı large pool’ daki memory problemi idi. Utlrp’ yi çalıştırdığınızda aslında oracle arka tarafda (database’nizin kaynaklarına bağlı olarak) bu işlemi parallel process ler çalıştırarak yapmaya çalışıyor. Parallel processler de large pool’ dan beslendiği için buradaki bir memory problemide bizi aşağıdaki gibi bir hataya götürüyordu.
Continue reading