ORACLE SQL Dersleri – Profile Nedir ?

Merhabalar, ORACLE SQL yazılarına devam ediyoruz, bu yazımızda Resource profile nedir, nasıl tanımlanır gibi konulara bakacağız. Bu yazımıza geçmeden önce bir öncekine göz atmanızı tavsiye ederiz.

Resource Profile Nedir :

Bir kullanıcının (user) veritabanında kullanabileceği kaynakların limitlerini belirlememizi sağlar. Örneğin bir kullanıcı kaç kere hatalı giriş yapabilir, veritabanında maksimum ne kadar CPU kullanma hakkı var vs.

Bir kullanıcı oluşturduğumuzda ona ait bir profile hazırlayabiliriz veya her oluşturduğumuz kullanıcı için ortak bir profile dosyası yapabiliriz. Böylece kullanıcı oluştururken profile dosyası belirtmezsek, default olarak bir profile dosyasını baz alır.

PROFILE OLUŞTURMA :

PROFILE oluştururken biden fazla parametre vardır, örnek kullanımına aşağıdaki şekilden bakalım,

Burada ilk 4 kutucuk sabit olup resource_parameters ve password_parameters kısımlarımız değişkendir. Bu alanların parametrelerine bakalım.

Resimlerden anlaşılacağı üzere kaynak parametrelerimiz ve şifre parametrelerimiz vardır.

SYS şemasına ait oluşturulmuş 2 adet profile var. Bunlardan DEFAULT olanı incelediğimizde resimde gördüğünüz parametreleri ve aldıkları değerleri görebilirsiniz. Üst kısımda Users kısmına geldiğinizde bu profile dosyasını kullanan kullanıcıları görebilirsiniz.

Örnek bir PROFILE dosyası oluşturalım.

CREATE PROFILE test_profile LIMIT

SESSIONS_PER_USER 1
CPU_PER_SESSION 30
CPU_PER_CALL UNLIMITED
FAILED_LOGIN_ATTEMPTS 2
PASSWORD_LIFE_TIME 10
PASSWORD_LOCK_TIME 1
PASSWORD_GRACE_TIME 7
PASSWORD_VERIFY_FUNCTION NULL;

CREATE USER test_user identified by oracle profile test_profile;

grant connect to test_profile;

Şimdi TOAD üzerinden birkaç hatalı giriş denemesi yapalım.

 

 

Görüldüğü gibi 2 hatalı girişten sonra kullanıcı kilitlendi, profile dosyamızda belirttiğimiz gibi parametremiz geçerli oldu. LOCK daha sonra daha yetkili bir kullanıcı tarafından kaldırılabilir.

Ayrıca kilitli olan kullanıcıları görmek için,

select * from dba_users where account_status='lock';

sorgusunu kullanabiliriz.

 

Bir başka yazıda görüşmek üzere, hoşçakalın..

Deniz Parlak

Hi, I'm a Computer Engineering student in Dumlupınar University.I will graduate next year. I did an internship TurkNet Telecominication Company in 2018 June- 2018 September. I had experience Linux/Unix system, SQL Server Management , SSRS, Mysql Database Management,Troubleshooting performance issues in Linux. I also interested Oracle database and technologies. I want to work as Oracle DBA after my University. I am practicing Unix, Exadata, Orace Cloud, Oracle RAC, Dataguard, EBS, Oracle BI and etc and i hope the articles will be helpful. Any questions, or support please write email deniz.parlak@yahoo.com

Leave a Reply

Your email address will not be published. Required fields are marked *