Rumah >pangkalan data >Oracle >Bagaimana untuk menanyakan kursor dalam Oracle
Kaedah pertanyaan: 1. Gunakan "select count(*) from v$open_cursor"; 2. Gunakan "SELECT A.USER_NAME,COUNT(*) FROM V$OPEN_CURSOR A GROUP BY A.USER_NAME".
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Oracle 11g, komputer Dell G3.
1 Lihat bilangan kursor sistem (bilangan kursor maksimum)
select value from v$parameter where name = 'open_cursors';show parameter open_cursors;
2 Lihat bilangan kursor yang sedang dibuka
select count(*) from v$open_cursor;
3. Lihat penggunaan Kursor
select o.sid, osuser, machine,o.sql_id,o.sql_text,o.cursor_type, count(*) num_curs from v$open_cursor o, v$session s where user_name = 'GLOGOWNER' and o.sid = s.sid group by o.sid, osuser, machine,o.sql_id,o.sql_text,o.cursor_type order by num_curs desc;
4. Ubah suai bilangan maksimum kursor Oracle
Mengikut penghunian kursor, analisa sama ada program yang mengakses pangkalan data mengeluarkan sumber secara normal Jika tiada masalah dengan program mengeluarkan sumber, tambahkan bilangan kursor.
alter system set open_cursors=2000 scope=both;
5. Jumlah bilangan kursor terbuka untuk setiap pengguna
SELECT A.USER_NAME, COUNT(*) FROM V$OPEN_CURSOR A GROUP BY A.USER_NAME;
6 Cari bilangan kursor cache untuk setiap terminal setiap pengguna dalam pangkalan data
SELECT AA.USERNAME, AA.MACHINE, SUM(AA.VALUE) FROM (SELECT A.VALUE, S.MACHINE, S.USERNAME FROM V$SESSTAT A, V$STATNAME B, V$SESSION S WHERE A.STATISTIC# = B.STATISTIC# AND S.SID = A.SID AND B.NAME = 'session cursor cache count') AA GROUP BY AA.USERNAME, AA.MACHINE ORDER BY AA.USERNAME, AA.MACHINE;<.>
7 Cari bilangan kursor terbuka untuk setiap terminal setiap pengguna dalam pangkalan data
<.>SELECT AA.USERNAME, AA.MACHINE, SUM(AA.VALUE) FROM (SELECT A.VALUE, S.MACHINE, S.USERNAME FROM V$SESSTAT A, V$STATNAME B, V$SESSION S WHERE A.STATISTIC# = B.STATISTIC# AND S.SID = A.SID AND B.NAME = 'opened cursors current') AA GROUP BY AA.USERNAME, AA.MACHINE ORDER BY AA.USERNAME, AA.MACHINE;
Tutorial Disyorkan: "
Tutorial OracleAtas ialah kandungan terperinci Bagaimana untuk menanyakan kursor dalam Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!