IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Installation Oracle Discussion :

[10g] taille mémoire


Sujet :

Installation Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 394
    Par défaut [10g] taille mémoire
    Bonjour,
    je vais doubler la mémoire du serveur oracle ( 8 en 16 GO) qui contient 6 bases de données. Comment modifier la taille de la mémoire des bases (je n'ai de console) ?

    J'ai par exemple pour une base un spfile :
    appli.__db_cache_size=515899392
    appli.__java_pool_size=4194304
    appli.__large_pool_size=4194304
    appli.__shared_pool_size=192937984
    appli.__streams_pool_size=8388608
    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 394
    Par défaut
    Bonjour,
    j'ai en plus
    *.sga_target=734003200

    est-ce que cette valeur que je dois modifier ?
    (avec alter ... ou dans le pfile puis générer le spfile.)

    Merci

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2005
    Messages : 197
    Par défaut
    Salut,

    sur chaque base tu fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    alter system set sga_max_size=2G scope=SPFILE;
    alter system set sga_target=ceQueTuVeuxJusque_sga_max_size scope=SPFILE;
    shutdown immediate;
    restart;

  4. #4
    Membre éclairé Avatar de macben
    Inscrit en
    Mars 2004
    Messages
    546
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2004
    Messages : 546
    Par défaut
    le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter system set sga_target=ceQueTuVeuxJusque_sga_max_size scope=SPFILE;
    a-t-il une utilité ?

    En effet avec le sga_max_size Oracle s'alloue la mémoire pour la SGA, donc autant la consommer ?

  5. #5
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2005
    Messages : 197
    Par défaut
    Citation Envoyé par macben Voir le message
    le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter system set sga_target=ceQueTuVeuxJusque_sga_max_size scope=SPFILE;
    a-t-il une utilité ?

    En effet avec le sga_max_size Oracle s'alloue la mémoire pour la SGA, donc autant la consommer ?
    En fait, c'est SGA_TARGET qui sert à Oracle pour l'ASMM (avec sga_target). Si SGA_MAX_SIZE est à 0 alors il sera mis par défaut à la valeur de SGA_TARGET.
    En fait cela te permet de réserver de la RAM pour par exemple augmenter la RAM lors d'un pic d'activité pour redescendre cette valeur plus tard ou bien pour prévenir la montée en charge d'une base sans avoir à la redémarrer car pour changer SGA_MAX_SIZE, tu dois redémarrer la base.

    Donc tu peut avoir ceci:
    SGA_MAX_SIZE=2G
    SGA_TARGET=1500M

    et Oracle pourra jouer avec ces 1500M.

    Dans ce cas, tu pourra monter la SGA_TARGET à 2GO dynamiquement.
    Disons que ca ne sers a rien de monter la SGA au max prévu si il n'y en a pas besoin. Il faut regarder dans le memory adivsor pour voir que beaucoup de SGA ne sers pas forcément à grand chose.

    Donc oui ca peut servir

  6. #6
    Membre éclairé Avatar de macben
    Inscrit en
    Mars 2004
    Messages
    546
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2004
    Messages : 546
    Par défaut
    Ok pour ta réponse qui m'éclaircit sur bien des points, mais je reviens à la charge sur ma question :

    Si tu mets ton sga_max_size à 2 Go, et ton sga_target à 1500 Mo, au démarrage Oracle va s'allouer non pas 1500 Mo mais 2 Go afin de te permettre dynamiquement de modifier ta sga_target.

    Donc quid de l'utilité de dire à Oracle : Tu te réserves 2 Go, tu n'utilises que 1500 Mo mais comme ça si je veux je peux te dire d'utiliser les 500 Mo restant à chaud puisque tu te les ai réservés.

    Puisqu'il se les réserve autant qu'il les utilise si besoin sans qu'on ait besoin de lui dire ?

    A moins que "trop" de SGA puisse déservir ?

    (bon s'il ne se les réserve pas ma théorie tombe à l'eau mais si je suis quasi sûr qu'il se les réserve)

  7. #7
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 462
    Par défaut
    Citation Envoyé par macben Voir le message
    En effet avec le sga_max_size Oracle s'alloue la mémoire pour la SGA...
    C'est toute la question, et y répondre fiablement n'est pas une mince affaire... Mine de rien, c'est une question extrêmement technique !

    La discussion suivante est fort intéressante : http://forums.oracle.com/forums/thre...hreadID=535400

    En particulier, ne zappez pas les interventions de Tanel Poder (une bête de technique pour ceux qui ne le connaissent pas) à partir de la page 3.
    Où on apprend notamment que la réponse dépend de l'OS (voire du paramétrage choisi), et que les outils de mesure de la mémoire ne fournissent pas forcément ce qu'on croit.

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 394
    Par défaut
    Bonjour,
    merci à tous.
    Je vais paramétrer sga_max_size et sga_target à la même valeur ! c'est plus simple et cohérent !

    Par contre que dois-je mettre pour pga_aggregate_target ?

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [System] Récupération de la taille mémoire de son programme
    Par splend_f dans le forum Général Java
    Réponses: 13
    Dernier message: 02/04/2006, 03h24
  2. Taille mémoire JVM
    Par javaDev dans le forum Général Java
    Réponses: 3
    Dernier message: 15/03/2006, 17h52
  3. Objets et taille mémoire
    Par programan dans le forum C++
    Réponses: 4
    Dernier message: 15/09/2005, 14h08
  4. Réponses: 3
    Dernier message: 28/06/2005, 09h07
  5. [JVM] Connaitre la taille mémoire utilisé par les dif classe
    Par sur_uix dans le forum Général Java
    Réponses: 4
    Dernier message: 18/09/2003, 09h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo