Précédent   Forum des professionnels en informatique > 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 Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/01/2008, 11h30   #1
Invité régulier
 
Inscription : juin 2004
Messages : 13
Détails du profil
Informations personnelles :
Âge : 60

Informations forums :
Inscription : juin 2004
Messages : 13
Points : 8
Points : 8
Par défaut ORA 04031 PB Large pool size

Bjour tous,
j'ai une erreur récurente sur base Oracle 8.1.7.4 / Sun OS 5.8.
ce serveur à d'autre bases ou RAS, celle ci sort ce message aléatoire ...

Citation:
SMON: Following errors trapped and ignored
ORA-00604: error occured at recursive SQL LEVEL1
ORA-04031: unable to allocate 4128 Byte off chared mémory ...
Je pense que c'est du au nombre de requêtes spoolées .. Donc quelques recherches m'amènent à revoir le dimensionnement SGA / Shared pool size ...
Là sait plus comment dimensionner ..
Je laisse les infos SGA et pfile ORA ...
Quelques Idéasss !!!

#Memoire SGA 69,713Mo (Pool_partag:17Mo+Cache_tampon:12Mo+Large_pool:40Mo+Pool_java:32Mo)

Citation:
# pfile
db_block_buffers = 3171
db_block_lru_latches = 4
db_block_size = 4096
db_file_multiblock_read_count = 137
db_name = V31P
dml_locks = 200
instance_name = Vxx
java_pool_size = 32768
large_pool_size = 41943040
log_archive_dest_1 = 'location=/audit/oracle/BASES_PRODUCTION/Vxx/arch'
log_archive_format = 'arch_%t_%s.arc'
log_archive_start = TRUE
log_buffer = 32768
log_checkpoint_interval = 8000
log_checkpoint_timeout = 0
max_dump_file_size = 10240
max_enabled_roles = 30
open_cursors = 500
os_authent_prefix = ''
parallel_max_servers = 0
processes = 50
remote_login_passwordfile = SHARED
service_names = V31
shared_pool_size = 18000000
sort_area_size = 1572864
user_dump_dest = /sgbd/oracle/BASES_PRODUCTION/Vxx/admin/udump
sb1960 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 12h04   #2
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
http://ora-04031.ora-code.com/
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 12h47   #3
Invité régulier
 
Inscription : juin 2004
Messages : 13
Détails du profil
Informations personnelles :
Âge : 60

Informations forums :
Inscription : juin 2004
Messages : 13
Points : 8
Points : 8
Par défaut C'à j'avais vu sur metalink ORA 04031 Mais !!

On me propose 3 solutions
1) Utiliser le dbms_shared_pool ... Et là je suis sec, je fais quoi et comment
2)Réduire la mémoire partagée ... Laquelle ? Parce qu'après on me conseil de l'élargir ..
- la large_pool_size c'est déjà 40Mo soit 60% de ma SGA
- la shared pool est de 17 Mo
- Va pas rester grand chose pour le cache.
J'aurai voulu une aide sur le point 2 ...
et une idée de la volumétrie à mettre sur le shared pool ... attention, je suis en production ... alors CIRCONSPECTION ..
sb1960 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 14h03   #4
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Pour réduire l'utilisation du shared pool, il faut que:
  • soit l'application utilise moins de code PL/SQL: votre application utilise-t-elle du PL/SQL (procédures ou fonctions stockées, packages ) ? Ce n'est d'ailleurs pas vraiment souhaitable pour les performances.
  • soit l'application partage plus les requêtes SQL (=utilisation des bind variables): ce qui peut éventuellement être forcé avec le changement du paramètre CURSOR_SHARING sans modifier le code applicatif.
A priori, la solution la plus simple est d'augmenter le paramètre shared_pool_size qui semble assez petit.

Mais avant de modifier un paramètre il faudrait en savoir plus:
- combien de sessions concurrentes sont ouvertes ?
- le code applicatif a-t-il été récemment modifié ?
- l'instance est-elle arrêtée régulièrement ou non ?
- quelle est la fréquence des erreurs ORA-04031 ?
- combien le serveur Unix a-t-il de mémoire ? Le serveur Unix est-il partagé avec d'autres instances Oracle ou d'autres services ?

Avez-vous la possibilité d'installer Statspack pour analyser les performances de l'instance ?

Voir aussi ce que dit la documentation Oracle 8i.
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 14h33   #5
Invité régulier
 
Inscription : juin 2004
Messages : 13
Détails du profil
Informations personnelles :
Âge : 60

Informations forums :
Inscription : juin 2004
Messages : 13
Points : 8
Points : 8
Par défaut Modifié la shared pool size

Pour voir, modifié la share pool size de 17 à 20 Mo qui fait passer la SGA de 70 Mo à 72 Mo.
Pas touché au reste.
pour info,
j'ai huit bases en production, arrêté une fois par jour pour sauvegarde à froid.
Ce pb est récurrent 1 à 2 fois par jour...
Base toujours en requête permanente, base de consultation parc informatique et gestion des incidents.
Aucune des autres bases n'a cet incident.
Donc, incident clos pour le moment ... Attente demain pour voir si .. encore ou plus
Merçi à tous
le pov new DBA ex systémier .. snif
sb1960 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



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


 
 
 
 
Partenaires

Hébergement Web