Bu yazımda oracle’ın açılıp-kapanma yöntemlerini anlatmaya çalışacağım gerçi Oracle kullanan database’ler çok sık açılıp kapanmazlar bunun sebebide zaten Oracle kullanacak büyüklükte olana databaseler genellikle 24 saat açıktır ama gene de istisnai durumlar vardır ve Oracle’ı açılıp-kapanmak isteyebiliriz bunun çeşitli kullanım şekilleri vardır.
Öncelikle belirtmem gerekir ki Oracle’ı her isteyen kullanıcı açıp kapatamaz Oracle’ı açıp kapatmak için SYSDBA veya SYSOPER ayrıcalıklarına sahip olmamız gerekir.
ORACLE BAŞLATMA YÖNTEMLERİ
Oracle’ı farklı şekillerde başlatma yöntemleri bulunmaktadır. Bu yazıda, bunların hangileri olduğunu ve hangi amaçla kullanıldığını anlatmaya çalışagım.
1.STARTUP NOMOUNT
Veritabanımızı STARTUP NOMOUNT ile açtığımızda, Parametre(Pfile-SPfile) dosyalarını okur ve database’in hangi parametrelerle ve boyutlarla açılması gerektiğini bulur ve database’i çalıştırır.Trace ve alert (arşiv) dosyalarını açar.
STARTUP NOMOUNT ; |
Bu kullanım recover modda kullanım için veya parametre değişiklikleri için kullanılır.Bu kullanım genellikle veritabanı veya controlfile dosyalarını yaratırken kullanılır .
NOMOUNT konumunda erişilebilen dinamik performans görünümleri ;
V$PARAMETER | Başlangıç parametresi hakkında bilgi içerir |
V$SGA | SGA üzerine özet bilgi içerir |
V$OPTION | Oracle Server ile kurulan seçenekleri listeler |
V$PROCESS | Aktif haldeki işlemler hakkında bilgi içerir |
V$SESSION | O anki oturum bilgisini listeler |
V$VERSION | Sürüm numarası ve bileşenleri listeler |
V$INSTANCE | O anki instance’ın durumunu görüntüler |
2.STARTUP MOUNT
Veritabanı STARTUP MOUNT mod ile açılırsa önce ilk aşamada çalışan NOMOUNT sayesinde çalışmış olan INSTANCE ile veritabanı ilişkilendirilir, sonra parametre dosyalarında belirtilen controlfile’ler okunur ve datafile’lerin ,redo log dosyalarının isimlerini ve durumlarını elde eder. Ama datafile’leri ve redo log dosyalarını MOUNT modda çalıştırmaz(açmaz).
Bu kullanımda veritabanı henüz açılmamıştır.Ancak fixed tablo ve view’ler için sorgu yapılabilir.Bu kullanımı da ;
- Veri dosyalarının isimlerinin değiştirilmesi
- Redo log arşivleme seçeneklerinin değiştirilmesi
- Veritabanının yedeğinin alınması gibi seçenekler için kullanılır.
NOT : STARTUP NOMOUNT’dan STARTUP MOUNT’a geçmek için kullanılan sorgu ;
ALTER DATABASE MOUNT ; |
NOT : İlk başta startup nomount açmadan direk mount modu açmak istersek gerekli sorgu ;
STARTUP MOUNT ; |
Mount moda böyle geçersek açılırken kendisi kendi içinde ilk başta NOMOUNT moda geçer ondan sonra MOUNT moda geçer.
MOUNT konumunda erişilebilen dinamik performans görünümleri ;
V$PARAMETER | Başlangıç parametresi hakkında bilgi içerir |
V$SGA | SGA üzerine özet bilgi içerir |
V$OPTION | Oracle Server ile kurulan seçenekleri listeler |
V$PROCESS | Aktif haldeki işlemler hakkında bilgi içerir |
V$SESSION | O anki oturum bilgisini listeler |
V$VERSION | Sürüm numarası ve bileşenleri listeler |
V$INSTANCE | O anki instance’ın durumunu görüntüler |
V$THREAD | Bağ bilgisini içerir (Örneğin redo log grupları) |
V$CONTROLFILE | Kontrol dosyalarının isimlerini listeler (NOMOUNT konumunda da kullanılabilmesine rağmen, hiç satır döndürmez) |
V$DATABASE | Veritabanı bilgisini içerir |
V$DATAFILE | Kontrol dosyasından veri dosyası bilgisini içerir |
V$DATAFILE_HEADER | Kontrol dosyasından veri dosyası başlığı bilgisini görüntüler |
V$LOGFILE | Online redo log dosyaları hakkında bilgi içerir |
3.STARTUP
Veritabanı normal olarak çalışır.Datafile’ler ve redo log dosyaları açılır.Tüm kullanıcılar artık veritabanına bağlanabilir.
NOT : STARTUP MOUNT’dan STARTUP‘a geçmek için kullanılan sorgu ;
ALTER DATABASE OPEN ; |
NOT : İlk başta startup mount modda açmadan direk startup modda açmak istersek gerekli sorgu ;
STARTUP ; |
STARTUP moda böyle geçersek açılırken kendisi kendi içinde ilk başta NOMOUNT moda geçer, sonra MOUNT moda geçer, ondan sonra STARTUP moda geçer.
4.RESTRICT MOD
Veritabanı standart mode’da olduğu gibi açılacaktır. Ancak restrict parametresi verildiği için sadece ayrıcalıklı kullanıcılar sisteme giriş yapabilir.Bu ayrıcalıklı kullanıcılar SYS ve SYSTEM gibi özel kullanıcılarla birlikte DBA rolündeki kullanıcılar, restricted session hakkına sahiptir.
NOT : Restrict modla veritabanımızı açmak istediğimizde 3 farklı açılış şekli vardır.Bunlar ;
- STARTUP NOMOUNT RESTRICT
- STARTUP MOUNT RESTRICT
- STARTUP RESTRICT
NOT : Database’imizde hangi kullanıcıların restricted session hakkına sahip olduğunu görmek istersek aşağıdaki sorguyu çalıştırırız.
SELECT b.grantee, a.grantee || ‘(Role)’ AS granted FROM dba_sys_privs a, dba_role_privs b WHERE a.privilege = ‘RESTRICTED SESSION’ AND a.grantee = b.granted_role UNION SELECT b.username, ‘User (Direct)’ FROM dba_sys_privs a, dba_users b WHERE a.privilege = ‘RESTRICTED SESSION’ AND a.grantee = b.username; |
NOT : Bir kullanıcının restricted mode’da bağlanabilmesi için ona hak verilmesi gerekir.
Hak vermek için ;
GRANT RESTRICTED SESSION TO mustafa; |
Mustafa kullanıcısına restricted session hakkı verilmiştir.
Hak almak için ;
REVOKE RESTRICTED SESSION FROM mustafa; |
Mustafa kullanıcısından restricted session hakkı alınmıştır
NOT : Database’i kapatmadan restricted mode’a geçmek istersek kullanacağımız sorgu ;
ALTER SYSTEM ENABLE RESTRICTED SESSION; |
Bu komutla birlikte veritabanı kapatılmadan, bundan sonraki yetkisiz kullanıcıların girişi engellenir.
Fakat sistemde bulunan yetkisiz kullanıcılar atılmaz.
NOT : Eğer restricted session’i kaldırıp, oturumu normal hâle getirmek isterseniz aşağıdaki ifadeyi
çalıştırmanız gerekir. Sonrasında kullanıcılar normal bir şekilde giriş yapabilirler.
ALTER SYSTEM DISABLE RESTRICTED SESSION; |
5.STARTUP FORCE
Geçici bir süre için database-i zorla açar. Database çöktüğü durumlarda başvurulacak yöntemlerden bir tanesidir.
6. STARTUP UPGRADE
Database upgrade edildikten sonraki ilk açılışta kullanılması tavsiye edilen komuttur.
ORACLE KAPATMA YÖNTEMLERİ
Oracle’ın kapatılması da açılışında olduğu gibi üç aşamada gerçekleşir.ilk önce veritabanı kapatılır,daha sonra inctance bağlantısı kesilir,son olarak da instance kapatılır.
Oracle kapanma komutları ;
1.SHUTDOWN NORMAL veya SHUTDOWN
Oracle ‘a bağlı tüm kullanıcıların bağlantılarını kesmesi beklenir, Kullanıcı sistemde olduğu sürece,
veritabanı açık kalacaktır.Bu sırada yeni kullanıcıların bağlanmasına izin vermez.Normal bir kapatma yapıldığında,veritabanında yapılan bütün değişiklikler datafile’lara yazılır.Az kullanılan bir kapatma yöntemidir sebebi de kapatma işleminin ne kadar süreceğinin belli olmamasıdır.
2.SHUTDOWN IMMEDIATE
Tüm kullanıcıların baglantıları kesilir.Bu sırada yeni kullanıcı bağlantılarına izin vermez.COMMIT işlemi yapılmamış kayıtları geri alır. Shutdown normal’de olduğu gibi datafile’lara veriler yazılır.. Veritabanı güvenle,temiz ve hızlı olarak kapatıldığından sık kullanılan kapatma yöntemlerindendir.
3.SHUTDOWN TRANSACTIONAL
Kullanıcıların son işlerini COMMIT ya da ROLLBACK işlemleri ile tamamlaması beklenir, kullanıcılar COMMIT ettikten sonra da veritabanından atılırlar.Yeni kullanıcılara ve yeni girişlere izin vermez.Bu komut SHUTDOWN NORMAL ile SHUTDOWN IMMEDIATE arasında düşünebiliriz.Bu kapatma şeklide Oracle da sık kullanılan yöntemlerdendir.
4.SHUTDOWN ABORT
Tüm işleri sonlandırır.Kullanıcı bağlantılarını keser ve en hızlı şekilde veritabanını kapatır.Veritabanı bir sonra ki STARTUP ‘da olmak üzere ROLLBACK yapar.Bu kullanım Oracle tekrar açıldıgında kurtarma işlemi yapılmasını gerektirir.
Yazar : Mustafa Bektaş Tepe
Java && Oracle