Thx Pak Ujang, Saya sudah kordinasi dengan rekan developer scripting PHP untuk ngecek ulang tentang kepastian untuk command release resource/connection di PHP-nya.
Kebetulan saya dapat artikelnya di: http://www.weberdev.com/ViewArticle/Simple-Connection-to-Oracle-with-PHP Sepertinya ada modul untuk 'free resources and close connection' di akhir setiap koneksi. *// free resources and close connection **OCIFreeStatement($sql_result); OCILogoff($connection**); * Mereka janji untuk recheck ulang. Sementara saya masih menggunakan solusi crontab/scheduled task di Win2K -nya, per 30 menit pake ORAKILL, tapi tetap aja sepertinya tidak sepenuhnya me-released resource, karena setiap hari pasti Oracle pasti kehabisan resource dengan pesan error : cannot make dedicated server process untuk session baru. Salam, Andy Siregar - Balikpapan Ujang Jaenudin wrote: > > pak andy, > > Pertanyaannya: > Apakah ada trik lain (yang terlewatkan) di sisi scripting PHP, sehingga > session yang terbentuk ketika akses oracle tidak otomatis di-release?? > > >> musti di check di koding apakah setelah melakukan transaksi/process > apakah ada coding untuk close connection?? > >> kalau memang di mid tier nya di pasang connection pooling, mustinya ini > bukan issue, karena session tsb akan dipakai oleh yg lain. > > Apakah ada setting lain di init.ora / listener.ora / sqlnet.ora yang > bisa memaksa untuk meng-kill secara otomati session yang sudah tidak > aktif/sniped? > > >> salah satu work around yg mungkin dengan membuat jobs dari OS (misalnya > running setiap 5 menit sekali) untuk query session yg SNIPED dan kill > dengan > orakil (windows) atau kiil -9 (linux or unix) > > shell script utk linux/unix: > > #!/bin/sh > > tmpfile=/tmp/tmp.$$ > sqlplus system/manager <<EOF > spool $tmpfile > select p.spid from v\$process p,v\$session s > where s.paddr=p.addr > and s.status='SNIPED'; > spool off > EOF > for x in `cat $tmpfile | grep "^[0123456789]"` > do > kill -9 $x > done > > rm $tmpfile > > regards > ujang > @jakarta > > On 8/22/07, Andy Siregar <[EMAIL PROTECTED] > <mailto:andys%40telkom.co.id>> wrote: > > > > Dear All, > > > > Salam kenal buat semua. > > > > Mohon bantuan untuk kasus kill koneksi di Oracle. > > (Oracle 8.1.7 OS : Win2k Server) > > > > Oracle Server ini diakses oleh beberapa aplikasi Web (PHP) via SQLNet > > (Oracle Client). > > Session yang terbentuk oleh aplikasi sampai ratusan, padahal user tidak > > sampai 30, dan kebanyakan statusnya INACTIVE. > > > > Dari beberapa referensi telah dilakukan action berikut: > > - Dicreate profile baru dengan melakukan setting di parameter > > *idle_time* & *connect_time* untuk user database dari aplikasi yang > > bersangkutan. > > Hasilnya, banyak session yang berstatus SNIPED setelah idle_time > > terlampaui. Hanya saja, sessionnya masih tetap muncul di V$Session. > > > > - Menambahkan parameter SQLNET.EXPIRE_TIME=10 di sqlnet.ora. > > Tapi sepertinya tidak berefek apa-apa. > > > > - Melakukan kill tread proses lewat command OS: ORAKIL sid spid > > (terhadap spid session yang berstatus SNIPED) > > select p.spid > > from v$process p, v$session s > > where p.addr=s.paddr and s.status='SNIPED'; > > > > Hasilnya session berhasil di-kill dan tidak muncul lagi dalam V$SESSION. > > > > Pertanyaannya: > > Apakah ada trik lain (yang terlewatkan) di sisi scripting PHP, sehingga > > session yang terbentuk ketika akses oracle tidak otomatis di-release?? > > Apakah ada setting lain di init.ora / listener.ora / sqlnet.ora yang > > bisa memaksa untuk meng-kill secara otomati session yang sudah tidak > > aktif/sniped? > > > > Salam, > > Balikpapan > > > > [Non-text portions of this message have been removed] > > > > > > > > [Non-text portions of this message have been removed]

