V5R40,
Iseries Navigator
Commençons par un Bug, avec le gestionnaire de scripts SQL, qui rencontre un problème d'affichage lié à la traduction des constantes.L'Apar SE26974 décrit cela.
Les problèmes MRI (liés à la traduction dans un langage donné) ne font jamais l'objet de PTF.Ce problème est donc classé UR1, c'est à dire à traiter en priorité lors de la prochaine version.En attendant, allez sur le site ftp://ftp.software.ibm.com/as400/products/clientaccess/win32/v5r4m0/files/iNav/se26974/, téléchargez le fichier dv_fr.jar, et placez le dans le répertoire "classes" de iSeries Access.
Sinon, c'est une grosse version en ce qui concerne la gestion de DB2, particulièrement
tout ce qui a trait aux performances.
remarquez l'accès aux index
à reconstruire (commande EDTRBDAP)
(ce concept date de la V5R20, mais n'était pas consultable, c'est lui
aujourd'hui qui suggère les index)
Un plan d'accès est le " plan, de bataille " du moteur SQL face
une requête :
"comment faire pour réaliser une requête mieux ?" , pendant cette
phase le système examine les index disponibles et en tire des conclusions.
ces "conclusions" sont mise en cache par SQE depuis la version 5.20
Attention, le cache des plans d'accès n'est fait que par SQE, vous ne
verrez donc pas de suggestion concernant les requêtes encore effectuées
par CQE
(ancien moteur utilisé par Query ou OPNQRYF, par exemple)
Avec la V5R40, au passage le système note les index qui lui paraissent
manquant dans QSYS2/SYSIXADV.
Le contenu de ce fichier est affiché par cette option "Assistant
de gestion des index" d'iSeries navigator
Depuis l'été 2006 avec la SI24893 du coté client et la SF99540 (Groupe database,) niveau 4, le système créé lui même sous forme d'index temporaires, les index qu'il juge nécessaires . (fonction MTI soit Maintained Tempory Indexes), ces index disparaissent à l'IPL.
vous pourrez le constater en demandant l'assistant de gestion d'index (sur la machine ou sur un nom de schéma).
la nouveauté se trouve tout à droite de cette fenêtre
![]()
voici donc, maintenant la structure de la table SYSIXADV
nom de la colonne (zone) nom système Type de donnée Description TABLE_NAME TBNAME VARCHAR(258) Table sur laquelle l'index est suggeré TABLE_SCHEMA DBNAME CHAR(10) Bibliothèque de la table SYSTEM_TABLE_NAME SYS_TNAME CHAR(10) nom système (court) de la table PARTITION_NAME TBMEMBER CHAR(10) Partition KEY_COLUMNS_ADVISED KEYSADV VARCHAR(16000) nom des clé suggerées LEADING_COLUMN_KEYS LEADKEYS VARCHAR(16000) clé principale, dont le critère de tri (croissant/décroissant) n'importe pas. INDEX_TYPE INDEX_TYPE CHAR(14) type d'index (normal ou EVI) LAST_ADVISED LASTADV TIMESTAMP date/heure de suggestion TIMES_ADVISED TIMESADV BIGINT nombre de fois la suggestion a été faite ESTIMATED_CREATION_TIME ESTTIME INT nombre de secondes(estimées) pour la création REASON_ADVISED REASON CHAR(2) Code raison (Sélection / tri ou groupage / les deux) LOGICAL_PAGE_SIZE PAGESIZE INT taille des pages recommandée MOST_EXPENSIVE_QUERY QUERYCOST INT temps d'exécution le plus long AVERAGE_QUERY_ESTIMATE QUERYEST INT temps d'exécution moyen TABLE_SIZE TABLE_SIZE BIGINT nombre de lignes dans la table (lors de la suggestion) NLSS_TABLE_NAME NLSSNAME CHAR(10) Séquence de tri à utiliser NLSS_TABLE_SCHEMA NLSSDBNAME CHAR(10) Bibliothèque de la séquence de tri MTI_USED MTIUSED BIGINT Nombre de fois ou cet MTI a été utilisé
(le système n'utilise plus un MTI, dès qu'un index permanent existe)MTI_CREATED MTICREATED INT Nombre de fois ou cet MTI a été créé
(rappel un index MTI disparrait à l'IPL)LAST_MTI_USED LASTMTIUSE TIMESTAMP Date/heure de dernière utilisation de cet index MTI.
Choix des travaux (comme en V5R30)
et récapitulatif final.
L'accès au cache des plans SQL, propose ce type d'affichage, mais en
temps réel, sans rien démarrer...
propriétés:
Affichage des instructions :
Le jeu d'instructions actuellement en cache pouvant être sauvegardé
sous forme d'image.
(sinon, il y a mise à blanc à
l'IPL)
•Par iSeries navigator, en cliquant, lors de l'affichage sur "création d'une image instantannée"
•Par appel à la procédure cataloguée QSYS2/DUMP_PLAN_CACHE(bibliothèque, nom_de_sauvegarde)
dans ce dernier cas, il faut importer ce cache pour le voir apparaître dans iSeries navigator :
pour cela, faites un clic droit sur "images instantanées de mémoire cache de plan SQL"
et ensuite, réutilisé pour une comparaison :
il n'est pas possible de comparer un jeu d'instructions venant du cache et un
moniteur
(ils n'ont pas le même type, voyez ci-dessous)
Indiquez bien ASCII PC, sinon le fichier résultat est en EBCDIC.
La commande utilisée est CPYTOIMPF, mais à partir
d'une vue crée dans QTEMP si vous avez mis de critères.
Enfin, vous pourrez, pour le serveur base de donnée (ODBC, JDBC, .NET) préciser le sous système dans lequel lancer le job en fonction de l'adresse IP d'origine
ATTENTION, il faut ajoutez un travail à démarrage anticipé à ce sous système, par :
ADDPJE SBSD(votre-sbs) PGM(QSYS/QZDASOINIT) INLJOBS(1) THRESHOLD(1) JOBD(Qgpl/QDFTSVR) CLS(QSYS/QPWFSERVER)
Vous retrouverez cette même notion sur un certain nombre de serveurs, Netserver par exemple.
Enfin sur ce dernier, la méthode d'authentification est améliorée, particulièrement pour l'accès aux serveurs Windows par /QNTC :
Si votre mot de passe est en casse mixte (MotDEpaSse, par exemple), le connexion était refusée.
La case à cocher "Autoriser l'authentification via la méthode de hachage du gestionnaire de réseau local), permet une authentification par la méthode LANMAN (plus ancienne, mais insensible à la casse).
Cela était disponible avant en créant un partage caché, nommé QZLSPWDANY$. ce qui n'est plus utile.
Un autre partage caché QZLSPASSKRB$, permettait une authentification kerberos (EIM). Cela est maintenant proposé par l'option "Méthode d'authentification".