|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : avril 2006 Messages : 69 ![]() |
Bonjour,
Sous oracle 8i, hier j'ai exécuté une requête SQL à partir de l'outil business Object, cette dernière premais 15 secondes. Aujourd'hui sur le même environnement cette requête prend plus de 30 minutes. Quels sont les paremètres qui peuvent intervenir pour une telle différence de performance (problème de cache, surcharge sur serveur autre...) Merci pour votre lumière, car je n'ai pas d'explication A titre d'information voici la requête Code :
Merci pour votre aide cordialement |
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
les stats ont elles été recalculées cette nuit et y a-t-il eu une grosse différence de volumétrie depuis le dernier calcul de ces stats ?
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : avril 2006 Messages : 69 ![]() |
Cela aurait pu être une bonne raison mais ce n'est pas le cas.
De Orafrance, ce n'est pas hier, je manipule des tables avec la plus grosse qui est 9800 lignes qui est oc_bareme. La différence comparé à hier c'est que j'utilise un alias de cette table. |
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
dans ce cas, il faut t'intéresser aux waits. Fait une trace de niveau 12 et applique un tkprof
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : avril 2006 Messages : 69 ![]() |
Peux tu me donner plus d'information concernant cette trace, pourquoi niveau 12? et tkprof c'est quoi??
Désolé de poser ces questions mais faut bien apprendre un jour. NB: je ne suis pas connecté en system manager mais je suis propriétaire du schéma |
|
|
00
|
|
|
#6 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
http://orafrance.developpez.com/dbahelp/#L3
level 8 suffit pour les waits mais level 12 permet de voir la valeur des bind variables |
|
|
00
|
|
|
#7 |
|
Membre chevronné
![]() DBA Oracle freelance Inscription : janvier 2005 Messages : 558 ![]() |
Une table (ou plusieurs) a t-elle été déplacée ?
D'autres traitements en cours au moment ou tu as lancé la requête (rebuild, sauvegarde, export...) ? L'admin système a activé les caches io ? Rien dans l'alert.log suite à un éventuel startup ? De 15" à 30' c'est fort ! Un report de statspack permettra de voir ce qu'il se passe pendant le traitement de la requête. |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : avril 2006 Messages : 69 ![]() |
d'après vous ces quoi la cause principale sachant que l'environnment n'a pas évolué??
|
|
|
00
|
|
|
#9 | |
|
Membre chevronné
![]() DBA Oracle freelance Inscription : janvier 2005 Messages : 558 ![]() |
Citation:
- activité hyper intense sur la base - nouveau plan d'exécution désastreux mais cela se produit sous certaines conditions : nouvelles statistiques (ou effacement), modification de paramètres, tentative de parallélisation (modification du dégré d'une des tables) etc. - une bind variable qui fout la grouille + cursor_sharing=FORCE |
|
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() DBA Oracle freelance Inscription : janvier 2005 Messages : 558 ![]() |
Un index invalide est peut être la cause. Mais devrait-il apparaître dans le plan d'exécution alors qu'il est unusable ?
Vérifies le status des index utilisés. Si unusable => rebuild + recalcul des stats. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com