29 Nisan 2011

Oracle Restart ve srvctl komutları

Merhaba,

Daha önceki konumuzda Oracle Restart komutları üzerine konuşmuştuk. Bu konudada Oracle Restart (ohasd) servisinin nasıl çalıştığını ve daha sonra bir database ve asm disk grubunu nasıl register edebileceğimiz üzerine biraz konuşalım.

Aşağıdaki komutla beraber "orcl" veritabanımıza hangi servislerin kayıtlı olduğunu, parametre dosyamızın yerini, ORACLE_HOME path imizi ve veritabanımızın primary/standby olup olmadığını anlayabiliriz.


Aşağıdaki örnekte ise orcl instance ına ait lgwr background process sini elimle kill ediyorum ve herhangi bir müdehaleye gerek kalmadan process i tekrar yarattığını görebiliyorum.


Eğer Oracle Restart komutlarına register etmediğim bir servis olsa idi veritabanım hang olacak ve veritabanıma startup komutunu göndermek zorunda kalacaktım.

Son olarak bir veritabanı nasıl otomatik restart komutlarından enable/disable edilir bir bakalım.

 
 
Bu tarz senaryoları çok daha detaylı şekilde Oracle 11g RAC and Grid Infrastructure Administration Accelerated Release 2 Eğitimi konuları içerisinde bulabilirsiniz.

Oracle 11g R2 Standalone Server ve Oracle Restart komutları

Merhaba,

11g R2 ile beraber Oracle Real Application Cluster (RAC) yapısında kullandığımız "srvctl" komutu ile beraber gelen merkezi yönetim komutlarını standalone server üzerindede kullanılabilir hale getirdiğini görüyoruz.

11g R2 kurulumunda eğer Oracle Grid Infrastructure for Standalone Server seçeneğini seçip kurulumu yapar isek OHASD (Oracle High Availability Service Deamon) yani Oracle Restart komutlarını aktif hale getirmiş oluyoruz (root.sh bunu yapmak üzere konfigure edilmiş).

"srvctl" komutu ile beraber hangi servisleri yönetebiliriz sorusunun cevabını hemen verelim ....
Database instances
Oracle Net listener
Database services
Automatic Storage Management (ASM) instance
ASM disk groups
Oracle Notification Services (ONS/eONS)

Evet ... Yukarıda adı geçen herbir servis yada herhangi bir yada birkaçını Oracle Restart'a register edip server'ın tutarsız yada istenmeyen bir durumda kapanması ve açılması durumunda yada herhangi bir background processin hang olması durumunda register olan bütün servislerin otomatik olarak başlatılmasını sağlamış oluruz.

Yeni yarattığınız bazı servisler otomatik olarak ohasd servislerine eklenirler. Örnek:

Create a database with OUI or DBCA
Create an ASM instance with OUI, DBCA, or ASMCA
Create a disk group (any method)
Add a listener with NETCA
Create a database service with SRVCTL
Ama aşağıdaki servisleri sizin register ediyor olamanız gerekir. Örnek:
Create a database service by modifying SERVICE_NAMES initialization parameter
Create a database service with DBMS_SERVICE.CREATE SERVICE                
Create a database with SQL statement    
Genel olarak servisleri kontrol etmek için kullandığımız komut
srvctl status database -d burak
 Servisleri başlatmak/durdurmak için kullandığımız komutlar ise:


$ srvctl start database –d burak –o open
$ srvctl start listener –l listenername
$ srvctl start service –d burak –s "service1,service2"
$ srvctl start diskgroup –g "DATA,FRA"
$ srvctl start asm
$ srvctl start eons -v
$ srvctl start ons

$ srvctl stop database –d burak –o immediate
$ srvctl stop listener –l listenername -f
$ srvctl stop service –d burak –s "service1,service2"
$ srvctl stop diskgroup –g "DATA,FRA" -f
$ srvctl stop asm –o immediate -f
$ srvctl stop eons -v
$ srvctl stop ons