Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > AS/400
AS/400 Le Forum d'entraide sur IBM AS/400 - iSeries. RPG.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/03/2011, 10h38   #1
Nouveau Membre du Club
 
Homme Thomas
Architecte technique
Inscription : septembre 2010
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Thomas
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Architecte technique

Informations forums :
Inscription : septembre 2010
Messages : 39
Points : 39
Points : 39
Par défaut [V6R1] - Vidage du plan cache SQL

Bonjour à tous.
En dehors d'un IPL, y'a-t-il un moyen de vider le plan cache SQL d'un i ?
Merci.
pwrdwnsys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 11h08   #2
Membre Expert
 
Patrick
Inscription : mai 2008
Messages : 821
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 42
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : mai 2008
Messages : 821
Points : 1 041
Points : 1 041
Quand on installe des PTFs DB2, le plan cache est vidé.
On peut modifier sa taille, au lieu des 512 Mo par défaut on peut mettre ce que l'on veut :
Base de Données, puis clic droit sur le nom de la base.
Mémoire de plan cache, Propriétés
Mais les modifications ne seront prises en compte qu'au prochain IPL.

M'enfin question :
Pourquoi vider le cache ?????
K2R400 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 11h50   #3
Nouveau Membre du Club
 
Homme Thomas
Architecte technique
Inscription : septembre 2010
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Thomas
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Architecte technique

Informations forums :
Inscription : septembre 2010
Messages : 39
Points : 39
Points : 39
Bonjour Patrick

C'est sur une machine de pré-production qui est vidée de l'applicatif de gestion, puis entièrement rechargée avec la production + les nouveaux développements à livrer. Donc de nouvelles tables, de nouveaux index, de nouvelles requêtes...
On pensait donc vider le cache pour repartir de "propre" à chaque fois et ne pas garder des choses qui pourraient devenir obsolètes dedans...
pwrdwnsys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 13h06   #4
Membre Expert
 
Patrick
Inscription : mai 2008
Messages : 821
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 42
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : mai 2008
Messages : 821
Points : 1 041
Points : 1 041
Quand une table possède un nouvel index, le moteur détruit systématiquement les plans d'accès existants dans le cache concernant cette table. Il en est de même quand les statistiques de colonne sont périmés (si les données de la table ont varié de +/- 15%, les statistiques de colonnes sont considérés comme périmés, les plans d'accès détruits).

Donc je ne pense que ça devrait poser aucun problème, la quasi totalité des plans d'accès vont être détruits puis reconstruits au fur et à mesure.
La seule question que je me pose reste les fonctions déterministiques. Mais généralement si elles sont déterministiques c'est que les données ne devraient pas varier d'un appel à l'autre.

Mais la solution la plus efficace reste effectivement l'IPL.
K2R400 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/03/2011, 08h40   #5
Expert Confirmé
 
Homme
Inscription : mai 2002
Messages : 1 638
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2002
Messages : 1 638
Points : 2 630
Points : 2 630
En V5R4 il existe une commande système (à tester en V6R1) :
call qqqooocach

là vous choisissez l'option clear cache plan (C de mémoire).

Il ne faut surtout pas le faire sur un as400 qui travaille !

En effet, vider le plan cache c'est aussi supprimer tous les MTI créé qui sont encore affilié à des explain dans le cache plan.

Citation:
On peut modifier sa taille, au lieu des 512 Mo par défaut on peut mettre ce que l'on veut :
Sur une base de prod le cache plan doit être suffisamment grand pour garder une majorité, voir tous les plans sql (et pour une pré-prod je dirais la même chose si vous voulez pourvoir analyser un tant soit peu les perfs de vos application)

La cache plan est un objet temporaire paginé, donc on peut sans problème lui mettre une valeur supérieur à la mémoire primaire.
punkoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h22.


 
 
 
 
Partenaires

Hébergement Web