|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : février 2007 Messages : 216 ![]() |
Bonjour;
Je voudrais ecrire toutes les requetes SQL qui s'executent dans ma base de données de l'utilisateur user1 dans une table qui s'appelle tab_user1. Je veux que le contenu de la vue v$sqlarea soit ecrit dans cette table. Autrement dit je veux créer un trigger sur v$sqlarea a chaque fois qu'une ligne est ajouté qui concerne l'utilisateur user1 qu'elle soit ecrite dans tab_user1. merci d'avance. |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : février 2006 Messages : 139 ![]() |
Bonjour,
pourquoi ne pas utiliser les traces Oracle? Si c'est pour une application, tu peux faire un trigger qui active les traces sur le logon du user. v$sqlarea contient les requetes de tous les users. Sinon il reste le lourd perfstat ou awr pour le log des requetes consommatrices. Cdt |
|
|
00
|
|
|
#3 | ||
|
Membre habitué
![]() Inscription : février 2007 Messages : 216 ![]() |
Je ne veux pas utiliser le trace d'oracle;
v$sqlarea peux me donner les requetes de l'utilisateur user1, si je fais une jointure avec dba_users. Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre habitué
![]() Inscription : février 2006 Messages : 139 ![]() |
vu les infos recherchées, problème de consommation, il te faudrait utiliser perfstat ou awr.
Il s'agit de mechanismes très puissants d'Oracle pour traquer les requêtes consommatrices et sans impacter la production. Tu peux ensuite faire des tas de stats par user, BF, DR, module,... Sinon concernant le trigger envisagé, il faudrait le positionner sur les tables systeme ce qui est à proscrire car tu pourrais bloquer la base. cdt |
|
|
00
|
|
|
#5 |
|
Membre éclairé
![]() |
bonjour
n'oubliez pas qu'il exist une autre vue v$sql bonne chance |
|
|
00
|
|
|
#6 |
|
Membre habitué
![]() Inscription : février 2007 Messages : 216 ![]() |
Comment je peux savoir les tables systèmes que la vue v$sqlarea lit pour avoir les infos.
|
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Code :
SELECT text FROM dba_views WHERE VIEW_NAME = 'V_$SQLAREA';
|
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : avril 2008 Messages : 61 ![]() |
Le plus simple est d'installer les statspack pour avoir ce type d'information.
Ce module n'est pas payant et fournit même des conseils de configuration de ton instance. Si ton but est bien de faire du tuning. L'idée est de scheduler des snapshots, tu peux ensuite sortir un rapport entre 2 snapshots (pas forcément successives). |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com