ORACLE INSTANCE YONETİMİ
Hatırlayalım:
INSTANCE: SGA, PGA ve BACKGROUND işlemlerinin bir araya gelmesiyle oluşan bir bileşendir.
ORACLE 11G R2 ilk açıldığında instance bileşeni çalışmaya başlar.
MANAGEMENT FRAMEWORK
Üç önemli parçadan oluşur. Database İnstance. Database’e olacak bağlantıları kontrol eder ve geçerli bağlantılara izin verir (Listener). Yönetim arayüzü (Management İnterface).
Database İnstance: Yöneteceğimiz verilerin tümüdür. Bu verilerden daha önce bahsetmiştik. Data File, Control File ya da Redo Log File gibi birimlerdir.
Listener: Listener servisi veri tabanına network üzerinden kullanıcıların bağlanmasını sağlar. Çalışmadığı takdirde hiçbir kullanıcı veri tabanına bağlanamayacaktır. Bir yapıda en az bir tane bulunmak zorundadır. Uzaktan gelen bağlantıların protokollerinin, portlarının, passwordlerinin doğruluğunu tespit eder. Kullanıcıya ait bilgilerin hangi makineye bağlanacağına dair bağlantı bilgilerini bulundurur.
Management Interface: Kendi içinde ikiye ayrılır.
1. Database Control:
2. Management Agent (Grid Kontolü kullanır.):
Grid Control: birden fazla enterprise Managementi olan Database’i yönetmek için kullanılır.
Management interface (Yönetimsel Arayüz) Enterprise Management Control (EMCTL) ile olabileceği gibi 3.partyyazılımlar ile de sağlanabilir. Eğer yapımızda birden fazla instance bulunuyorsa o zaman Enterprise manager yerineOracle Grid Control kullanılır.
Management Control’den bahsedelim. Öncelikle Management Console’a bağlanmak için; eğer bundan önce kurulum adımlarını aynen uyguladıysanız. Management Control kurulmuş ve çalışır durumda olacaktır.
İlk olarak orcl’yi set etmemiz gerekmekte. Ve her işlem de mutlaka set gerekmekte. Database’de her session açmak istediğimizde set işlemi yapılmalıdır. Aşağıdaki gibi.
Terminal penceresine ki linuxta masaüstüne farenin sağ tuşu ile tıklayarak Open Terminal diyerek ulaşırız. Windowsta başlat, çalıştıra cmd yazıp entera basarak ulaşırız.
[oracle@ora2 ̴]$ . oraenv
[oracle@ora2 ̴]$ ? orcl
|
Set işlemini yaptıktan sonra artık işlemlerimize başlayabiliriz. İlerki aşamalarda zaten set işlemini birçok kez tekrar edeceğiz. ORCL: oracle home’dur. Database’in verdiğimiz isimdir. Sizler başka isimlerde atamış olabilirsiniz.
Eğer ASMCMD ye gitmek istiyorsak o zaman ASM yi set etmemiz gerekmekte. Asm’yi set etmek aşağıdaki gibidir.
[oracle@ora2 ̴]$ . oraenv
[oracle@ora2 ̴]$ ? +ASM
|
Böylece Automatic Storage Management set edilmiş oldu.
Şimdi ORCL set ederek Enterprise Management Control (EMCTL) servisinin çalışıp çalışmadığını “kontrol edelim. Bu servisin çalışıp çalışmadığını kontrol etmek için emctl status dbcontrol komutu kullanılır. Deneyelim.
EMCTL’nin çalışmadığına dair bilgi almış olduk. Sevisi çalıştırmak için ise emctl start dbconsole komutu kullanılır. Deneyelim.
Yukarıdaki işlemle emctl servisini başlatmış olduk. Tekrardan servis durumunu emctl status dbcontroledediğimizde, alacağımız sonuç içerisinde enterprise control linkini kopyala-yapıştır ile ya da ctrl ve sol tık ile de açabiliriz.
Şimdi bize verdiği linki alıp mozillaya yapıştırdığımızda Enterprise Management Control web arayüzüne erişmiş olacağız.
Yukarıdaki web arayüzünde User Name, Password, Connect As kısımlarını görmekteyiz. Sistemde SYSDBA hakkına sahip olan bir kullanıcı atadıysak onu gireriz. User Name kısmına yetkili kullanıcının adını, password, connect askısmına sisteme girmek istediğimiz hakkı ki biz sysdba hakkı ile gireceğiz.
Yukarıdaki pencerde userların parolalarını değiştirmek istersek değiştiririz. Ben gerekli görmüyorum ve Cancel diyerek sonraki ekrana geçiyorm.
Yukarıdaki pencerede Oracle Enterprise Manager 11G Arayüzü karşımıza çıktı. Ve Veritabanımız ile ilgili tüm bilgilere buradan ulaşabilir, çeşitli işlemler yapabiliriz. En çok yapacağımız işlermlerin başında performans izlemesi geliryor diyebiliriz.
SQL Developer’ı masaüstümüze kısayol atabilmek için terminal penceresine cd /u01/app/oracle/product/11.2.0/dbhome_1/sqldeveloper dizinine gidilir. Yazmış olduğum bu dizinORACLE_HOME’dur. Oracle home’u daha önce anlatmıştık.
Öncelikle ORCL ‘yi set ettik. Sonrasında cd $ORACLE_HOME/sqldeveloper yazarak TAB ‘a basmakla cd /u01/app/oracle/product/11.2.0/sqldeveloper yazmak aynı şeydir. $ dolar işareti ORACLE_HOME’a kısaca erişmemiz için bir LINUX özelliğidir.
Şimdi pwd yazıp dizini kontol edelim, sonrasında ls yazıp dizinin içindekilere bakalım.
Gelen pencerede yapmamız gereken sqldeveloper.sh ‘yi çalıştırmak. Aşağıdaki gibi komut yazılır.
Yukarıdaki pencerede user ayarlarımızı migrate etmek isteyip itemediğimizi soruyor ben YES diyerek devam ediyorum.
User ayarlarımızın kaydedileceği yeri belirlememizi istemekte ben varsayılanda bırakıyorum ve OK diyorum. Sonrasında SqlDeveloper açılacak.
Yukarıdaki ekranda Show tips at startup tikini kaldırıyorum ve close diyorum. Artık SQLDeveloper karşımızda şimdi bağlantı ayarlarını yapacağız.
İstersek Connections’u tıklayarak NewConnection diyebiliriz.
Yada File’den New tıklayarak üstteki pencereyi uygularız. Sonrasında açılan pencerede aşağıdakileri uygularız.
İlk satırda bağlantı ismini gireriz, ikinci satırda bağlanmak istediğimiz user ismini gireriz, HR user’ı ile giriş yapalım sonraki satırda userın şifresini. Hostname olarak server makinesinde olduğumuz için localhost yazıyoruz, networkteki bir makineden bağlanıyorsak o zaman ip adresini yazardık. Port numarası ORACLE’ın kullandığı default port olan 1521 giriyorum. Sonrasında SID olarak ORCL’yi giriyorum. Kaydediyorum.
Görüldüğü gibi veri tabanı nesnelerimiz geldi.
PARAMETRE DOSYALARI
Oracle Veritabanı açılırken birtakım parametreleri baz alarak açılır. Bu parametrelere initialization parameter(başlangıç parametreleri) denir. Bu parametreler $ORACLE_HOME/dbs/ klasörü altında tutulur. Parametre dosyaları process adedini, log_archive’in neresi olacağının, control dosyalarının yerlerinin bilgisi gibi bilgiler parametre dosyalarında tutulur. Gerekli parametre bilgilerini oracle aldıktan sonra control_file’lere erişir ve veritabanı dosyalarını kullanmaya başlar. Parametre dosyaları üzerinde değişikliğe çok nadiren gidilebilir.
İki çeşit parametre dosyası vardır. SPFILE ve PFILE.
PFILE : Oracle parametrelerini tutar. PFILE bir metin dosyasıdır. İçerisinde istediğimiz değişikliği yapabiliriz.$ORACLE_HOME/dbs/ klasöründe bulunur ve init.ora ya da init<SID>.ora şeklinde geçer.(windowstaORACLE_HOME\database\ altındadır.) SID: oracle veritabanımızın ID’sidir. Farklı lokasyonda tutulabilir. Yani bizim örneklerimizde kullandığımız yapıyı baz alırsak initorcl.ora olacaktır.
SPFILE: PFILE’den sonra çıkmıştır. SPFILE ve PFILE arasındaki en büyük fark PFILE bir metin dosyasıyken SPFILEbinary değerdedir. Yani pfile üzerinde değişiklik yapabiliriz ancak spfile üzerinde değişiklik yapamayız. Buda bizim için olumsuz bir durumdur. Ancak performans açısından oracle bize spfile kullanımını önermektedir. İstersek kendimiz yedeğini oluşturabileceğimiz gibi RMAN otomatik olarak yedeğini alabilir. Böylece her değişiklik sonrası ya da öncesinde yedek almamız gerekmeyecektir. Spfile’ı da farklı bir lokasyonda tutabiliriz. Spfile de parametre değiştirdiğimizde veritabanı yeniden başladığında tekraren ayrı yapmak zorunda değiliz. Ancak pfile de mümkün değil pfile yapılan değişiklik girilmezse problem oluşacaktır. Spfile de pfile gibi $ORACLE_HOME/dbs/ altında tutulur.
Spfile’ın bir kopyasını pfile olarak başka bir yere alabiliriz. Bunun için
[oracle@ora2 ̴]$ create pfile=’$ORACLE_HOME/initorcl1.ora’ from spfile;
|
Yukarıdaki komut ile spfile dosyasının bir kopyasını pfile olarak /home/oracle dizinine initorcl1.ora ismiyle kopyalamış olduk. Böylece hem güvenliğimizi almış olduk, hemde bu işlemin tam tersini yaparak düzenlediğimizpfile dosyasını spfile olarak düzenlemek suretiyle performans açısından tavsiye edileni de uygulamaya devam etmiş oluruz.
Parametre Değerlerini Görüntüleme Yöntemleri
Parametreler değerlerini birkaç yöntemle görüntüleyebiliriz. Bütün parametreleri aşağıdaki gibi görüntüleyebiliriz.
SQL> Show parameter;
|
Show parameter komutu sadece SQL*PLUS ile kullanılır. SQL Developer ile kullanılamaz.
Aşağıdaki komut ile Database’deki parametre dosyalarını görüntüleriz.
SQL> Show parameter db;
|
1’nci Yöntem:
Aktif oturumlara ait parametre bilgilerini aşağıdaki gibi alabiliriz.
SQL> Show parameter [parametre_adi];
|
Aşağıda örneklerle inceleyelim.
SQL> Show parameter control_files;
|
Yukarıda control_files parametresini görüntülemek için komut girdik. Sonuç aşağıdaki gibi gelir.
Yukarıdaki ekranda contol_file parametre dosyasıyla ilgili type ve value bilgileri görünmekte. Bütün parametreler için aynı komut ile görüntüleme yapabiliriz.
SQL> Show parameter control;
|
Yukarıdaki komut ile ise control olan bütün parametre dosyalarını getiri. Sonucunu aşağıda görelim.
Yukarıdaki sonuçta birden fazla control kelimesini içeren parametre dosyası olduğunu görmekteyiz.Control_file_record_keep_time, control_files ve control_management_pack_access parametre dosyaları. Bu dosyalarla ilgili type bilgisi ve value bilgisi görülmekte. Bütün parametrelerin içerisinde dinamik durduğu performans viewı bulunur.
2’nci Yöntem:
View’lardan yararlanarak kullandığımız yöntemdir. v$parameter viewlarından yararlanırız. V$parameteriçerisindeki bütün parametre isimlerini, taşıdıkları değerle birlikte gösterir. Parametreye ait kolonları görüntüleyebiliriz. Aşağıdaki gibi.
SQL> desc v$parameter;
|
Yukarıdaki sorgunun sonucu aşağıdaki gibi döner.
Parametre adını bildikten sonra, taşıdığı değeri bulmak için en pratik yöntem v$parameter viewından yararlanmaktır.
Bu yöntemi ayrıca Enterprise Manager üzerinden de yapabiliriz. Ayrıca Enterprise Manager’da server sekmesinde de görebiliriz.
3’ncü Yöntem:
3’ncü yöntem ise yukarıda da yedekleme amaçlı değindiğimiz yöntemdir. SPFILE’ı PFILE’a dönüştürerek görüntülemektir. Bunun için;
SQL> create pfile from spfile;
|
Komutu kullanılır. Oluşturulan pfile dosyası $ORACLE_HOME/dbs dizininde init<SID>.ora şeklinde olacaktır. Tabi ki farklı dizinlere de oluşturabiliriz ve istediğimiz ismi verebiliriz. Yukarıda ki örnekte olduğu gibi, bu sefer deneme.ora ismini vereceğim.
SQL> create pfile=’/home/oracle/deneme.ora’ from spfile;
|
Yukarıdaki komutta /home/oracle dizinine deneme.ora isminde oluşturmuş olduk. Tabi ki pfile’ı text editör ile düzenleyebiliriz. Bunu vi, gedit komutlarını kullanarak yapabiliriz. Yukarıdaki kodlamayı örnek alarak;
SQL> vi /home/oracle/deneme.ora
|
Yukarıdaki komut girilince text editör ile deneme.ora açılır ve gerekli gördüğümüz düzenlemeler yapılır. Sonrasında bu pfile’ı yeniden spfile’e dönüştürmek gerekir. Bunu da tam tersi şeklinde yaparız.
SPFILE DEĞERLERİNİ DEĞİŞTİRMEK
SPFILE binary (ikilik) değerde olduğunu söylemiştim. Üzerinde pfile de olduğu gibi metin editörle değişiklik yapılamaz. Ancak kendine göre değişiklik yöntemi var. Spfile üzerindeki değişiklikler isteğe bağlı yada gereksinime bağlı olarak, istersek çalışan instance üzerinde yani memory üzerinde değişiklik yapabiliriz. İstersek direk spfileüzerinde değişiklik yapabiliriz. İstersek ise her ikisi üzerinde değişiklik yapabiliriz.
Bu değişiklikler için scope adı verilen 3 farklı kavram var, tek tek açıklayalım ve örneklendirelim.
MEMORY : Memory üzerinde yapılacak değişiklik, memory için olacaktır. Server restart olduğunda yapılan parametre değişikliği kaybolacaktır.
SPFILE : Girilen değer hemen geçerli olmaz ve server ilk restart edildiği andan itibaren geçerli olacaktır.
BOTH : bu scope kullanıldığında hem değer hemen geçerli olur, hem de restart edildikten sonrada geçerli olur. Hem memoryde hemde spfilede değişiklik uygulanmış olur. Eğer scope değeri bildirmezsek otomatik olarak bothsayacaktır. Örnekler:
ALTER SESSION SET NLS_DATA_FORMAT=’mon dd yyyy’;
|
Açık olan session’da tarih formatını “mon dd yyyy” olarak değiştirdik.
ALTER SYSTEM SET open_cursors=300 SCOPE=MEMORY;
|
Memory içerisinde open_cursors parametresini 300 yaptık ve bu işlem server restart ettikten sonra eski haline dönecektir.
ALTER SYSTEM SET open_cursors=300 SCOPE=SPFILE;
|
Spfile içerisinde değişiklik yapıldı ve ilk restarttan sonra bu değişiklik devreye girecektir.
ALTER SYSTEM SET open_cursors=300 SCOPE=BOTH;
|
Both seçeneği kullanıldığından hem memoryde hemde spfile üzerinde değişiklik uygulanmış oldu.
SPFILE’i, PFILE’dan Yararlanarak Yeniden Oluşturmak (alıntıdır)
Veritabanında bir karar alındı ve bir takım değişiklikler yapmanız gerekiyor diye düşünelim. Örneğin arşive çıkılacak dosyaları /data2/archive yerine artık, /data5/archive altına kopyalamamız gereksin. Bu gibi bir durumda spfile’i bir pfile’a dönüştürmek; ardından pfile içinde değişiklik yapmak ve son olarak pfile’dan tekrar spfile yaratmak gerekir. Adım adım aşağıdaki işlemleri uygulayalım.
1. SPFILE dosyasından, metin formatında bir PFILE oluşturuyoruz:
SQL> create pfile=’/tmp/deneme.text’ from spfile;
|
2. PFILE dosyasını açıp, log_archive_dest parametresinde ilgili değişiklikleri yapıyoruz.
SQL> ! vi /tmp/deneme.text
|
3. Çalışmakta olan bir veritabanının spfile’ini ezemeyeceğimiz için veritabanını kapatıyoruz.
SQL> shutdown immediate;
|
4. Değişiklik yaptığımız pfile’i kullanarak yeni bir spfile oluşturuyoruz.
SQL> create spfile from pfile=’/tmp/deneme.text’;
|
5. Veritabanını açıyoruz.:
SQL> alter database open;
|
SPFILE’i direkt değiştiremediğimiz için, onu önce bir PFILE’a dönüştürüp, ilgili değişikliği yaptık ve sonrasında yeni bir SPFILE yarattık. Biraz zahmetli bir iş; ancak her parametre değişiminde böyle bir şey yapılması gerekmiyor. Çoğu durumda, veritabanını yeniden başlatmadan birçok parametreyi değiştirebiliyorsunuz. Ancak veritabanını kapatıp, alter system olmaksızın parametre değiştirmek isterseniz yukarıdaki adımları izlemeniz gerekiyor. Çok fazla kullanılmayacak, ancak bilmenizin yararlı olacağı bir diğer konuda, gerek SPFILE’in gerekse PFILE’in default olmayan bir lokasyonda bulunmasında işinize yarayabilir. Aşağıdaki komutla, /tmp/altindaki pfile’i kullanarak, /data2/ altında spfile yedeği oluşturabilirsiniz:
SQL> create spfile=’/data2/spfile_yedek.ora’ from pfile=’/tmp/deneme.text’;
|
Dosya türleri arasında geçişi nasıl sağlayacağımızı, buraya kadar gördük.
Parametre Dosyalarının Okunma Sırası
Oracle veritabanının ‘default’ olarak parametre dosyalarını okumaya çalışacağı adres$ORACLE_HOME/dbs klasörünün altıdır. Okuma sırası aşağıdaki gibi gerçekleşir:
1. spfile<SID>.ora
2. spfile.ora
3. init<SID>.ora
4. init.ora
Yukarıdan aşağıya doğru bir sırada dosyaların varlığı aranır. Örneğin, spfile<SID>.ora yoksa, spfile.ora dosyasının var olup olmadığına bakılır. Eğer dosya varsa, init<SID>.ora dosyasına bakılmaz. Ama yoksa, bir alt satıra inilip devam edilir. Dosyalardan herhangi birisinin olması veritabanının açılması için yeterlidir. Fakat hiçbiri yoksa, veritabanınız açılmayacaktır. Farkedeceğiniz gibi dosya bakma sırasında önce SPFILE’ların varlığına bakılıyor; yoksa PFILE’larla çalışılıyor. Oracle’in iç yapısının öncelikli olarak SPFILE’lara bakması elbette tesadüf değil. SPFILE kullanmanın avantajlarını yukarıda da saymıştık.
PFILE/SPFILE Kullanımına Dair Detaylar
Eğer sisteminizde PFILE mi, yoksa SPFILE mi kullanıldığını anlamak istiyorsanız, aşağıdaki sorgu yararlı olacaktır;
SQL> SELECT DECODE(value, NULL, ‘PFILE’, ‘SPFILE’) “Init File Type” FROM sys.v_$parameter WHERE name = ‘spfile’;
|
Sisteminiz SPFILE ile çalışıyorsa, SPFILE’in lokasyonunu da saptayabilirsiniz. Bunun için yine v$parameter görüntüsünden yararlanırız:
SQL> SELECT VALUE FROM V$PARAMETER WHERE NAME=’spfile’;
|
SPFILE Dosya Türü
PFILE Dosya Türü
Veritabanını PFILE ile Açmak
Yedinci bölümde parametre dosyalarının okunma sırasından bahsetmiştik. Eğer spfile formatında dosyalarınızı kaldırırsanız, veritabanınız pfile ile açılacaktır. Ekstra herhangi bir işlem yapmanız gerekmez. SPFILE dosyalarını silmeniz, bir başka yere taşımanız ya da ismini değiştirmeniz yeterlidir. (Böyle bir şey yapacaksanız, elbette son dediğimi uygulamanız daha uygun olur.) Ancak yapıyı bozup, bu dosyaları kaldırmak istemiyorsanız, test için böyle bir şeye kalkıştıysanız ya da veritabanını farklı bir lokasyonda bulunan PFILE dosyasıyla açmak istiyorsanız, elbette bu da mümkün:
SQL> STARTUP PFILE=’/tmp/deneme.text’;
|
Daha önceki örneklerimizde de görüldüğü gibi pfile’lar ya da spfile’lar farklı dosya isimleriyle kaydedilebilir. İllâki sonunda .ora olması gerekmez. Böyle yapılmasının nedeni, Oracle’ın dosyayı tanımasıdır. Fakat yukarıdaki gibi bir komut girdiğinizde, dosya adının init ile başlaması, .ora ile bitmesi, ya da $ORACLE_HOME/dbs altında olması gerekmemektedir. PFILE dosyasına ait olan adresten gidilir ve dosya okunur.
Veritabanını Farklı Lokasyondanki SPFILE ile Açmak
Diyelim ki, elimizde bir spfile yedeği var ve bu dosya olması gereken adreste değil. Üstelik dosya adı formatı da farklı. Peki bu durumda ne yapabiliriz? Hemen aklımıza gelecek çözüm, dosyanın spfile<init>.ora şeklinde yeniden isimlendirilmesi ve ardından $ORACLE_HOME/dbs altına atılması olabilir. Doğru bir yöntem. Fakat her zaman uygulayamayız. Çünkü dosya lokasyonunu değiştiremeyeceğimiz durumlarla karşılabiliriz. Örneğin spfile’in bulunduğu klasörün yedeği alınıyordur ve bu nedenle yerinden oynamaması gerekir. Bu gibi durumlarda az evvelki yöntemi ne yazık ki kullanamayız. İşin kötüsü dokuzuncu bölümde anlatıldığı gibi de çalıştırmamız mümkündür. Böyle durumlarda, boş bir dosya yaratıp içine sadece aşağıdaki satırı girmeniz gerekir: SPFILE=/klasor/adresi/spfile_adi.ora Dosyanın sonunun .ora olması gerekmez; keyfi bir başka şey de olabilir. Önemli SPFILE dosyası neredeyse, onun gösterilmesidir. Konumuza devam edelim ve diyelim ki yukarıdaki satırı /tmp/calistir.text isimli bir metin dosyasına yazdınız. Artık farklı lokasyondaki spfile’i kullanmaya hazırsınız demektir. Bundan sonra yapmanız gereken /tmp/calistir.text dosyasını bir pfile gibi kullanmaktır:
SQL> STARTUP PFILE=’/tmp/calistir.text’;
|
Burada yapılan işlem, basit bir metin dosyasını sanki pfile gibi göstermek ve veritabanını bu dosya üzerinden spfile’a yönlendirmekten ibarettir. Eğer rman olmaksızın spfile’larınızı yedeklemek istiyorsanız bu yöntem işinize yarayacaktır.
DATABASE KAPATMA SENARYOLARI
Database 4 şekilde kapanır.
a. Normal
b. Transactional
c. İmmediate
d. Abort
c ve d şıkları sıklıkla kullanacağımız kapatma metodudur.
Normal kapatma:
SQL> shudown normal;
|
Yukarıdaki komutta database’in normal kapanmasına dair bir komut gönderilmiş. Veri tabanına bağlı bir kullanıcı varsa, kullanıcının oturumunu (session) kapatması beklenir. yani idle sonlanması beklenir. yani kullanıcı bağlanıp transaction başlatmışsa ancak commit, rollback yapmamışsa veri tabanı kapanmaz ve kullanıcının işlemlerini bitirmesini bekler. Eğer bağlı kullanıcı yoksa tutarlı kapanır.
Transaction kapatma:
SQL> shudown transaction;
|
Bir transaction var ise onun sonlanmasını bekler. Sonlandıktan sonra kapanır.
Immediate kapatma:
SQL> shudown immediate;
|
Bağlı kullanıcıların işlemlerini sonlandırır. Commit yapılmışsa datafile’e işlemleri kaydeder. Commit yapılmamışsa rollback yapar. Veri tabanı bu komutla tutarlı kapanır.
Abort kapatma:
SQL> shudown abort;
|
Hiçbir işleme bakmaz ve doğrudan kapatır. Fişi çekip kapatmakla aynı şey. Tutarlı kapanmaz.
Tutarlı kapanmak sistem checkpoint numarası ile checkpoint atar ve kapatır. Bir problemin oluşmasını bu şekilde önler ve tutarlı şekilde kapanmış olur.
DATABASE AÇMA SENARYOLARI
Database 3 şekilde açılır.
a. Nomount [SQL> startup nomount;]
b. Mount [SQL>startup mount;]
c. Open [SQL>startup open;]
Temel amaç database’i open etmektir. Ancak bazı problemlerle karşılaşabilir ve database’i nomount ya damount modda açabiliriz.
Nomount’ta neden açılır:
SQL> startup nomount;
|
Komutu ile başlatılır. Backup ya da recovery işlemi yapmak için bu modda açılır. Control File’de bir sorun varsa o zaman bu modda açılır. Gerekli düzenleme yapılır. Ve ;
SQL> alter startup mount;
|
Komutuyla mount işlemine geçilir.
Mount’ta neden açılır:
SQL> startup mount;
|
Redo log dosyalarında ya da datafile’lerde bir sorun oluştuğunda, ya da database yapısında bir değişiklik yapılacağı zaman mount ile açılır. Bozulmuş redo log ya da datafile’ler recovery yapılır ya da database yapısında değişiklik yapılır. Open moda geçilir.
SQL> alter startup open;
|
Yukarıdaki komut open moda geçmek için kullanılır.
Restart etmek için
SQL> startup force
|
Komutu kullanılır.
SRVCTL Kullanımı:
SRVCTL komutu ile veri tabanına bağlanmadan veri tabanı üzerinde işlemler yapabiliriz.
$ srvctl stop database –d orcl -o immediate;
|
Tanımlarsak server control komutunu kullanarak database’i stop et ( “-d” peki hangi database’i) –d orcl (orcl Database’ini) ( “-o” peki hangi modda kapatsın) –o immediate.
Bu durumda ORCL database’i immediate modunda durdurulacaktır. Start etmek için
$ srvctl stop database –d orcl -o open;
|
Alert Log File’den bahsedelim:
Alert Log Dosyaları eğer siz yerini değiştirmediyseniz, /u01/app/oracle/diag/rdbms/orcl/orcl/trace altıdna bulunur.
$ cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace
$ gedit alert_log_oracle.log
|
Yukarıdaki şekilde alert log dosyasının içini görebiliriz.
Linux’ta erişmek istediğimiz dosyanın başına v$ koyarak bulunduğu dizine ulaşabiliriz.
Hiç yorum yok:
Yorum Gönder