J'ai besoin de voir les requêtes qui sont envoyées à Oracle pour les exécuter. Quelqu'un peut-il me donner des instructions détaillées spécifiques sur la façon de faire cela?Comment puis-je voir les requêtes exécutées sur Oracle?
11
A
Répondre
3
Cette requête affichera les requêtes qui sont en cours d'exécution:
select sql_text from v$sqlarea where users_executing > 0;
14
Si vous voulez voir les requêtes d'un utilisateur spécifique, vous pouvez utiliser (en supposant que vous avez des privilèges à interroger v$session
et v$sqlarea
(généralement par SELECT_CATALOG_ROLE
)
SELECT sess.sid,
sess.username,
sqla.optimizer_mode,
sqla.hash_value,
sqla.address,
sqla.cpu_time,
sqla.elapsed_time,
sqla.sql_text
FROM v$sqlarea sqla, v$session sess
WHERE sess.sql_hash_value = sqla.hash_value
AND sess.sql_address = sqla.address
AND sess.username = 'SCOTT'
Remplacer SCOT T avec le nom d'utilisateur approprié dans votre système
Sortie:
544 SCOTT ALL_ROWS 2004330732 07000001064088E8 89391 131836 SELECT sess.sid, sess.username,
sqla.optimizer_mode, sqla.h
ash_value, sqla.address, s
qla.cpu_time, sqla.elapsed_time,
sqla.sql_text FROM v$sqlarea sq
la, v$session sess WHERE sess.sql_hash_
value = sqla.hash_value AND sess.sql_
address = sqla.address AND sess.usern
ame = 'SCOTT'
Excellent, pouvez-vous me donner un exemple de sortie de cette requête? Parce que je n'ai pas de privilèges, j'ai demandé à l'équipe DBA de me donner la sortie et ils m'ont fondamentalement donné quelque chose qui ressemble plus au plan d'exécution de la requête, ce qui n'est pas ce que je veux. Collez un exemple de sortie s'il vous plaît, donc je peux savoir si les demandes d'autorisations seraient utiles pour moi ou non –
J'ai une base de données où je suis administrateur complet, mais il dit que la session v $ n'existe pas. Comment puis-je résoudre ceci? –
Par administrateur, voulez-vous dire que vous avez le rôle DBA et que vous exécutez la requête en tant qu'utilisateur avec ce rôle? Si ce n'est pas le cas, connectez-vous en tant que SYS et exécutez GRANT SELECT ON v $ session TO; SUBVENTION SELECT ON v $ sqlarea AU . –
bhangm