Veritabanlarını anlık olarak izlemeye yarayan araç : oratop
oratop , linux sistemlerdeki top komutuna benzeyen , veritabanı performansı hakkında genel bilgi elde etmemiz yarayan bir araçtır. Top komutu ile kullanıldığında sistem performansının ne durumda olduğu hakkında genel bilgi elde edebiliriz.
Herhangi bir kurulum gerektirmeden , derlenmiş komut dosyası şekilde çalıştırılabilir. Gerekli dosyaya Oracle Support tarafındaki 1500864.1 numaralı dokümandan ulaşabilirsiniz. Farklı işletim sistemleri ve farklı veritabanı versiyonları için derlenmiş dosyalar bulunmaktadır.
İlgili dosyayı indirdikten sonra , dosyanın oracle kullanıcısı tarafından çalıştırılabilir hale getirilmesi gerekmektedir.
Sonrasında gerekli ortam değişkenleri ayarlanıp , direkt olarak çalıştırılabilir.
Linux x86-64 platformu için 11.2 versiyonlu veritabanımız için gerekli dosya olan oratop.RDBMS_11.2_LINUX_X64 ismiyle dosyamızı indirmiştik.
Öncelikle mevcut dosyayı yeniden alandıralım ve oracle için çalıştırılabilir hale getirelim.
[root@db01 ~]$ mv oratop.RDBMS_11.2_LINUX_X64 oratop [root@db01 ~]$ chown oracle:oinstall oratop [root@db01 ~]$ chmod 755 oratop
oracle ile gerekli değişkenleri ayarlayıp , aşağıdaki gibi çalıştırabiliriz. Komutlar aynı sırada çalıştırılmalıdır.
[oracle@db01 ~]$ export TERM=xterm #ya da vt100 [oracle@db01 ~]$ export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1 [oracle@db01 ~]$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib [oracle@db01 ~]$ export PATH=$ORACLE_HOME/bin:$PATH [oracle@db01 ~]$ export ORACLE_SID=ORCL1
Aşağıdaki gibi lokaldeki veritabanımız için oratop aracını çalıştırabiliriz. -i ile belirttiğimiz yenileme aralığı 10 saniyenin altındaki değerlerde doğru bilgi vermeyebilir. Varsayılan değeri 5’tir.
[oracle@db01 ~]$ ./oratop -i 10 / as sysdba
Örnek ekran görüntüsü aşağıdaki gibidir.
Uzaktaki bir veritabanını da izlemek mümkündür. Aşağıdaki şekilde oratop komutunu başka veritabanlarına bağlanarak da çalıştırabiliriz.
[oracle@db01 ~]$ ./oratop -i 10 username/password@tns
Örnek :
$ ./oratop -i 5 system/manager@tns
Oratop aracını ya dba olan bir kullanıcı ile yada aşağıdakilere select yetkisi olan bir kullanıcı ile çalıştırılmalıdır.
v$active_services v$instance v$latchname v$parameter V$PDBS (12c) v$recovery_file_dest v$sqlcommand v$system_event [g]v$servicemetric [g]v$session [g]v$sql [g]v$sysmetric GV$ASM_DISKGROUP GV$DIAG_INFO GV$PGASTAT GV$PROCESS GV$OSSTAT GV$RECOVERY_PROGRESS GV$SESSION_WAIT_CLASS GV$SESSTAT GV$SERVICE_EVENT GV$SERVICE_STATS GV$SGA GV$SORT_SEGMENT GV$SQLAREA GV$SQL_PLAN GV$SYSTEM_EVENT GV$SYSSTAT dba_data_files dba_free_space dba_tablespaces dba_temp_files dba_undo_extents sys.ts$
Bu görüntülere aşağıdaki gibi yetki verebilirsiniz.
SQL> grant select on <view> to <username>;
oratop ile ilgili yardım almak için -h parametresiyle çalıştırabilirsiniz.
[oracle@db01 ~]$ ./oratop -h oratop: Release 14.1.2 Usage: oratop [ [Options] [Logon] ] Logon: {username[/password][@connect_identifier] | / } [AS {SYSDBA|SYSOPER}] connect_identifier: o Net Service Name, (TNS) or o Easy Connect (host[:port]/[service_name]) Options: -d : real-time (RT) wait events, section 3 (default is Cumulative) -k : FILE#:BLOCK#, section 4 lt is (EVENT/LATCH) -m : MODULE/ACTION, section 4 (default is USERNAME/PROGRAM) -s : SQL mode, section 4 (default is process mode) -c : database service mode (default is connect string) -f : detailed format, 132 columns (default: standard, 80 columns) -b : batch mode (default is text-based user interface) -n : maximum number of iterations (requires number) -i : interval delay, requires value in seconds (default: 5s) -v : oratop release version number -h : this help