Uso de memoria de RDS for MySQL demasiado alto
Para una instancia de base de datos que almacena datos de aplicaciones de misión crítica
Amplíe su instancia haciendo referencia a Cambio de una clase de instancia de base de datos.
Para una instancia de base de datos que no almacena datos de aplicaciones de misión crítica
Compruebe el uso de memoria del equipo local. Si la curva de uso de memoria es estable, no se requiere ninguna acción.
Para una instancia de base de datos que almacena datos de aplicaciones de misión crítica y está configurada con una clase de instancia grande
- Durante las horas fuera de pico, cambie el valor de performance_schema a OFF. Para RDS for MySQL 5.6 y versiones anteriores, debe reiniciar la instancia para que el cambio surta efecto.
- En la consola de Cloud Eye, vea el uso de memoria de su instancia.
Si el uso de memoria sigue siendo alto, realice cualquiera de las siguientes operaciones:
- Amplíe la clase de instancia.
- Cambie el valor innodb_buffer_pool_size:
- Si la memoria de instancia es de 2 GB, cambie innodb_buffer_pool_size a 268,435,456 en byte (256 MB).
- Si la memoria de instancia es de 4 GB, cambie innodb_buffer_pool_size a 1,073,741,824 en byte (1 GB).
- Si la memoria de instancia es de 8 GB, cambie innodb_buffer_pool_size a 3,221,225,472 en byte (3 GB).
- Si la memoria de instancia es superior a 8 GB, no es necesario ajustar el valor innodb_buffer_pool_size.
- Cambie el valor de innodb_buffer_pool_size según sea necesario.
- MySQL tiene un mecanismo de balanceo de memoria dinámico. Si el uso de memoria es inferior al 90%, no se requiere ninguna acción.
- La memoria de RDS for MySQL se asigna a la capa del motor y a la capa del servidor.
- La memoria asignada a la capa de motor incluye el conjunto de memorias intermedias InnoDB, la memoria intermedia de registro y la caché de índice de texto completo. El grupo de búferes de InnoDB es la memoria residente y representa una gran proporción.
El grupo de búferes de InnoDB es un área de memoria que contiene datos de InnoDB almacenados en caché para tablas, índices y otros búferes auxiliares. Puede utilizar el parámetro innodb_buffer_pool_size para definir el tamaño del grupo de búferes.
- La memoria asignada a la capa de servidor está ocupada por la caché de subprocesos, la caché de binlogs, el búfer de clasificación, el búfer de lectura y el búfer de unión. Estas memorias caché y búferes generalmente se liberan cuando se cierran las conexiones.
Dicha asignación de memoria mantiene el uso de memoria de una instancia RDS for MySQL en ejecución en aproximadamente un 80%.
- La memoria asignada a la capa de motor incluye el conjunto de memorias intermedias InnoDB, la memoria intermedia de registro y la caché de índice de texto completo. El grupo de búferes de InnoDB es la memoria residente y representa una gran proporción.