Maison  >  Article  >  base de données  >  Comment interroger le curseur dans Oracle

Comment interroger le curseur dans Oracle

青灯夜游
青灯夜游original
2022-01-25 17:53:099944parcourir

Méthode de requête : 1. Utilisez "select count(*) from v$open_cursor" ; 2. Utilisez "SELECT A.USER_NAME,COUNT(*) FROM V$OPEN_CURSOR A GROUP BY A.USER_NAME".

Comment interroger le curseur dans Oracle

L'environnement d'exploitation de ce tutoriel : système Windows 7, version Oracle 11g, ordinateur Dell G3.

1. Afficher le nombre de curseurs système (nombre maximum de curseurs)

select value from v$parameter where name = 'open_cursors';show parameter open_cursors;

Comment interroger le curseur dans Oracle


2.

3 .Voir l'utilisation du curseur Situation

Comment interroger le curseur dans Oracle

select count(*) from v$open_cursor;

4. Modifier le nombre maximum de curseurs dans Oracle

Comment interroger le curseur dans Oracle


En fonction de l'occupation du curseur, analysez si le programme qui accède à la base de données libère normalement des ressources. il n'y a aucun problème avec le programme qui libère des ressources, augmentez la taille du curseur.

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;

5. Nombre total de curseurs ouverts pour chaque utilisateur

Comment interroger le curseur dans Oracle

alter system set open_cursors=2000 scope=both;

6. Trouvez le nombre de curseurs en cache pour chaque terminal de chaque utilisateur dans la base de données

Comment interroger le curseur dans Oracle.

SELECT A.USER_NAME, COUNT(*) FROM V$OPEN_CURSOR A GROUP BY A.USER_NAME;

7. Trouvez le nombre de curseurs ouverts dans chaque terminal de chaque utilisateur dans la base de données

Comment interroger le curseur dans Oracle

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;

Tutoriel recommandé : "Tutoriel Oracle"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn