mardi 4 novembre 2008

Tuning de base

Depuis hier, je suis chez un client pour optimiser leur base de production sous Oracle 8i.

Leur serveur AIX n'ayant que 1 Go de RAM, j'avais préconisé de le passer à 2 Go. Finalement, il en a 3. Cela à permit d'augmenter le SGA et sur les db_block_buffers.

J'ai installé Statpacks pour suivre les tests et avoir une base de travail pour optimiser le SQL et la base.
Suite à différentes modification, les temps de réponses deviennent enfin acceptable.

Voici les paramètres touchés :
  • db_block_buffer et définition de db_block_lru_latches pour pouvoir utiliser des buffers de type KEEP et RECYCLE. Dans ce cas, les buffers KEEP permettent de stocker les données de table contenant peu de données pour les avoir toujours en mémoire afin de limiter les I/O.
  • SGA pour le code PL/SQL, SQL, ....
  • sort_area_size pour exécuter plus de tris en mémoire
  • timed_statistics pour avoir des statistiques datées
  • session_cached_cursors pour garder en mémoire les requêtes fréquemment utilisées

L'autre partie du travail consiste à tuner les requêtes SQL qui posent des problèmes de performances.

Au bout de 2 jours de travail , la base de données a de meilleurs temps de réponses.

Grégory