Nous obtenons un ORA-00845: MEMORY_TARGET not supported on this system
au démarrage.
Cependant, df -h
montre
tmpfs 7,9G 4,0K 7,9G 1% /dev/shm.
Ce qui indique qu'il y a suffisamment de mémoire disponible. Des idées quelle pourrait être la cause?
Vous utilisez peut-être Gestion automatique de la mémoire (AMM) .
AMM utilise deux paramètres d'initialisation:
Le système de fichiers à mémoire partagée doit disposer de suffisamment d'espace pour accueillir les valeurs MEMORY_TARGET et MEMORY_MAX_TARGET.
Vérifier:
SQL> show parameter memory
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 6096M
memory_target big integer 6096M
shared_memory_address integer 0
Sous UNIX/Linux , vous devrez définir le système de fichiers mémoire partagée en conséquence.
Vérifier:
$ df -h /dev/shm
Ensemble:
$ mount -t tmpfs shmfs -o size=some_value_in_number_with_size /dev/shm
Par exemple,
mount -t tmpfs shmfs -o size=4096m /dev/shm
Erreur Cause: La nouvelle fonctionnalité de gestion automatique de la mémoire utilise/dev/shm sous Linux pour la gestion SGA et PGA. Les erreurs se produisent si MEMORY_TARGET ou MEMORY_MAX_TARGET est configuré à une taille supérieure à la taille/dev/shm configurée, ou si/dev/shm n'est pas monté correctement.
SOLUTION: Veuillez confirmer que Oracle_HOME est défini correctement. Cette erreur se produit parfois quand elle n'est pas définie correctement.
Assurez-vous que la taille de/dev/shm est configurée suffisamment grande, comme dans: Mount -t tmpfs shmfs -o taille = 7g/dev/shm
Remarque: Vous devez vérifier auprès de votre administrateur système quelle est la "meilleure" taille pour/dev/shm, en fonction de ce qui a été signalé dans le fichier d'alerte.
En outre, de nombreuses meilleures pratiques suggèrent maintenant de désactiver AMM, en particulier dans les boîtes Exa * Engineered qui ont une capacité de mémoire plus grande et peuvent utiliser des pages énormes/grandes . Cela est dû au fait que les pages AMM et Huge/Large s'excluent mutuellement et que les performances globales sont meilleures Énormes pages
Assurez-vous que la sortie df affiche la configuration correcte/dev/shm lorsque vous utilisez Oracle sur le système:
$ df -k
Filesystem 1K-blocks Used Available Use% Mounted on
...
shmfs 6291456 832356 5459100 14% /dev/shm
Une solution simple consiste simplement à ajouter de l’espace à /dev/shm fs
.
# mount -t tmpfs shmfs -o size=5g /dev/shm
Pour plus de détails et de concepts, consultez l'article du blog ORA-00845: MEMORY_TARGET non pris en charge sur ce système .
J'obtenais aussi la même erreur en démarrant la base de données. Je # out paramètre memory_target dans mon pfile et puis essayé à nouveau et cela a fonctionné .
cette erreur survient lorsque le paramètre de mémoire Oracle est élevé pour la zone tmpfs par exemple
si les paramètres de la mémoire sont comme ceci:
*.memory_max_target=20G
*.memory_target=0
*.sga_max_size=20G
*.sga_target=15G
*.pga_aggregate_target=5G
et la taille de tmpfs est 15G
au démarrage, vous obtenez l'erreur ora-00845 vous devez définir la taille de tmpfs sur la valeur de mémoire maximale Dans ce paramètre, le paramètre de mémoire maximale est 20G. fichier par exemple 25G
...
...
tmpfs /dev/shm tmpfs defaults,size25G 0 0
...
...
puis remontez le système de fichiers tmpfs
#mount -o remount /dev/shm
alors votre base de données pourra démarrer