2016-10-25 1 views
1

Je travaille sur la base de données en mémoire Oracle 12c, pour cela j'augmente le MEMORY_TARGET à 32 Go qui est la taille de mon système de fichiers partagé. Lorsque je redémarre la base de données Oracle est la zone globale du système total = 3.3286E + 10 octets, mais après que lorsque j'utilise la commande ALTER SYSTEM SET SGA_TARGET = 28G SCOPE= SPFILE; le système donne l'erreur que Specified value of MEMORY_TARGET is too small, needs to be at least 35136M.Différence entre SGA_target et Total System Global Area

Y a-t-il une différence entre SGA_target et Total System Global Area? et c'est quoi?

+0

Le message d'erreur et la commande ne correspondent pas. Il semble que vous ayez vraiment essayé de définir MEMORY_TARGET à moins que le total ou SGA_TARGET et PGA_AGGREGATE_TARGET. [Cela pourrait aider] (https://docs.oracle.com/database/121/ADMIN/memory.htm#GUID-0E201F66-D280-472A-AD80-20AB8F7E9C01). –

+0

La valeur de sga_target contrôle la zone globale du système total. Cochez [this] (http://www.orafaq.com/wiki/SGA) – learningloop

Répondre

0

SGA_Target est la taille du SGA n'incluant pas le PGA. Memory_Target inclut les deux. Si les PGA_target + SGA_Target sont> Memory_Target, vous pouvez obtenir cette erreur. Jetez un oeil à this et this.

+0

Vous avez raison à 'SGA_Target est la taille de la SGA sans inclure le PGA' mais INCORRECT à 'PGA_target + SGA_Target sont> Memory_Target'. En fait, vous utilisez sga_target> 0, vous devriez avoir memory_target = 0 et vice versa pour indiquer que vous avez l'intention d'utiliser ASMM ou AMM. Aucun des liens référencés ne l'a approuvé non plus. – pahariayogi

+0

En fait, le premier lien supporte ma réponse. J'aurais dû écrire pga_aggregate_target. Il n'y a pas de "PGA_Target". "Si memory_target <(sga_target + pga_aggregate_target), l'instance ne pourra pas retourner une erreur ORA-00838." – Joe

+0

Je pense que si vous avez fait référence à ce texte à partir du premier lien ... "Le paramètre memory_target combine la valeur du paramètre sga_target pré-Oracle 11g avec le paramètre pga_aggregate_target. ... " Ceci permet à DBA de savoir comment précalculer 'memory_target' si vous avez l'intention de passer de l'option ASSM à AMM. – pahariayogi

0

Vous ne devez pas modifier sga_target si vous avez l'intention d'utiliser memory_target. Vous devez choisir entre la gestion de la mémoire AMM (memory_target) ou ASMM (sga_target, pga_aggregate_target) pour votre instance DB et configurer les paramètres DB en conséquence.

Y a-t-il une différence entre SGA_target et Total System Global Area? et c'est quoi?

FYI - La zone globale du système est SGA et comprend plusieurs sous-composants de mémoire. SGA_TARGET permet oracle d'allouer dynamiquement la mémoire

la zone SGA (System Global) - EDIT

Lorsque vous utilisez AMM, le SGA_TARGET et agir PGA_AGGREGATE_TARGET que les paramètres de taille minimale pour leurs zones de mémoire respectives. Cependant, pour permettre à Oracle de prendre le contrôle total de la gestion de la mémoire, ces paramètres doivent être mis à

+0

En outre, dans le mode de connexion du serveur partagé, le PGA se déplace dans le SGA, ce qui doit être pris en compte. – Joe