Précédent   Forum du club des développeurs et IT Pro > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 24/12/2012, 15h19   #1
alexisongagna
Membre du Club
 
Alexis ONGAGNA
Inscription : septembre 2010
Messages : 62
Détails du profil
Informations personnelles :
Nom : Alexis ONGAGNA
Âge : 32

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : septembre 2010
Messages : 62
Points : 55
Points : 55
Par défaut Comment fige t-on le plan d'exécution d'une requête

Bonjour,

J'ai une question à poser aux DBA qui liront ce post.
Depuis quelque temps, notre DBA de production me parle de figer le plan d'un certain nombre de requêtes dont les plans ont changé depuis 1 mois.

J'aimerais savoir comment on le fait ?

Le plan d'exécution d'une requete SQL est, me semble t-il, consultable dans la vue V$SQL_PLAN. L'historique des différents plans sont obtenus grâce à la vue DBA_HIST_SQL_PLAN.

Comment à partir de ces vue, un DBA peut t-il figer le plan d'une requete ?

Merci de m'éclairer ce point svp.
alexisongagna est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/12/2012, 15h52   #2
LBO72
Membre confirmé
 
Avatar de LBO72
 
Inscription : mai 2007
Messages : 405
Détails du profil
Informations personnelles :
Âge : 44
Localisation : France

Informations forums :
Inscription : mai 2007
Messages : 405
Points : 296
Points : 296
Bonjour,

Une des solutions serait de bloquer les stats.
l'autre solution serait d'uliser les HINT pour orienter l'optimiseur à prendre toujour le même plan d'exécution.
....
....

LBO72
LBO72 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/12/2012, 11h15   #3
Rams7s
Membre chevronné
 
François
Inscription : février 2010
Messages : 395
Détails du profil
Informations personnelles :
Nom : François

Informations forums :
Inscription : février 2010
Messages : 395
Points : 719
Points : 719
Citation:
Envoyé par alexisongagna Voir le message
Depuis quelque temps, notre DBA de production me parle de figer le plan d'un certain nombre de requêtes [...]
J'aimerais savoir comment on le fait ?

Juste par curiosité, il (le DBA) sait comment faire mais ne veut pas vous dire? Ou alors il a entendu dire que ça se faisait mais ne sais pas comment faire? Ou il va vous expliquer en guise de cadeau de noel?

Sinon pour le technique: SQL Plan management: DBMS_SPM. Vu la manière dont vous en parlez, ce sera bien plus propre que de mettre des hints, et c'est compatible avec le bind variable peeking. C'est fort quand même.
(11g, sinon c'est les outlines en 10g il me semble mais je connais pas plus que ça)
Rams7s est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2012, 21h07   #4
ora_home
Membre éclairé
 
Avatar de ora_home
 
Homme Zakaria EL HAMDAOUI
Consultant Oracle
Inscription : février 2009
Messages : 81
Détails du profil
Informations personnelles :
Nom : Homme Zakaria EL HAMDAOUI
Localisation : Maroc

Informations professionnelles :
Activité : Consultant Oracle
Secteur : Finance

Informations forums :
Inscription : février 2009
Messages : 81
Points : 339
Points : 339
Envoyer un message via Yahoo à ora_home
A mon avis, la solution c'est de fixer les plan d'exécutions par des HINT, comme ça oracle doit oblogatoirement suivre vos instructions.
ALors si on stop les statistiques ca sera pour tt les requete alors que dans votre cas, vous avez juste fixer le plan pour certains requetes.
__________________
Cordialement,
Z.EL HAMDAOUI
Consultant Oracle


blog.developpez.com/zakaria-elhamdaoui/

http://zelhamdaoui.blogspot.com/

Réglage des instructions SQL
ora_home est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 02/01/2013, 17h13   #5
pachot
Expert Confirmé
 
Avatar de pachot
 
Homme Franck Pachot
Consultant DBA en Suisse (Trivadis SA)
Inscription : novembre 2007
Messages : 992
Détails du profil
Informations personnelles :
Nom : Homme Franck Pachot
Âge : 42
Localisation : Suisse

Informations professionnelles :
Activité : Consultant DBA en Suisse (Trivadis SA)
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2007
Messages : 992
Points : 2 762
Points : 2 762
Bonjour,

Les solutions pour fixer un plan d'exécution dépendent de votre version et vos options: avez-vous Tuning Pack ?

Mais fixer un plan est - à mon avis - une solution temporaire: le plan que vous fixez ne sera peut-être pas bon
- lorsque le volume des données va changer
- lorsque vous allez changer de version d'Oracle
- lorsque vous allez déployer des évolutions de votre application
- ...

Mais si plusieurs plans ont changé depuis 1 mois, il faut comprendre pourquoi, et fixer la cause !

Cordialement,
Franck.
__________________
A lire sur mon blog Oracle - Articles d'Experts des articles traduits en français de Jonathan Lewis, Tom Kyte, Doug Burns, Cary Millsap, Greg Rahn ...
pachot est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 05h56.


 
 
 
 
Partenaires

Hébergement Web