El tamaño de confirmación de Oracle es mayor que la RAM disponible, pero v$memory_target_advice dice OK

El tamaño de confirmación de Oracle es mayor que la RAM disponible, pero v$memory_target_advice dice OK

Ejecutando Oracle 18c en una máquina virtual Windows 2012R (VMWare). (No tengo acceso a ninguna de las herramientas de administración de VM).

La VM tiene 5 vCPU y 12 GB de Ram (esta fue supuestamente la recomendación del equipo de VM para reducir la contención de la CPU...) Sin embargo, estoy notando que la memoria comprometida (utilizada por Oracle) es significativamente mayor que la Ram disponible para la máquina. .


Fragmento de la pestaña Rendimiento del Administrador de tareas que muestra 18,9 GB de 36 GB comprometidos


Fragmento de la pestaña Detalles del Administrador de tareas que muestra el desglose por proceso de Oracle




v$memory_target_adviceno insinúa ninguna mejora al aumentar el objetivo de memoria...


ingrese la descripción de la imagen aquí


Preguntas

  1. ¿Significa esto que una gran parte de Oracle está en un archivo de paginación?
  2. Dado que todavía hay 3 GB disponibles, ¿significa esto que si Oracle necesitara (o si Windows decidiera que se le debería permitir el acceso a Oracle) RAM adicional, podría hacerlo? (¿Quiere decir que no es necesario cambiar nada?)

Respuesta1

Oracle solía tener un error en su optimizador que hacía que calculara mal la memoria necesaria para ordenar datos. Este mal cálculo provocó que se asignara una enorme cantidad de memoria, en muchos casos más de la disponible. Esto no quiere decir que alguna vez usó esta memoria, por lo que se asignó en el archivo de paginación pero nunca se usó.

Sin embargo, se afirmó que este error se solucionó en la versión 12. Una posibilidad es que todavía esté presente.

Otra posibilidad es que Oracle tenga una pérdida de memoria. Puede probar esto inmediatamente después de reiniciar verificando la memoria comprometida después de que se inicie Oracle y después de realizar SELECT.

Si sus pruebas apuntan a un error en la asignación de memoria de Oracle, debe informarlo.

información relacionada