

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Préparation du cache pour MariaDB sur Amazon RDS
<a name="MariaDB.Concepts.XtraDBCacheWarming"></a>

La préparation du cache InnoDB peut fournir des gains de performances pour votre instance de base de données MariaDB en enregistrant l’état actuel du groupe de mémoires tampons lorsque l’instance de base de données est arrêtée, puis en rechargeant le groupe de mémoires tampons à partir des informations enregistrées au démarrage de l’instance de base de données. Cette approche contourne la nécessité de « préparer » le groupe de mémoires tampons à partir d’une utilisation normale de la base de données et précharge à la place le groupe de mémoires tampons avec les pages des requêtes courantes connues. Pour plus d’informations sur la préparation du cache, consultez [Vidage et restauration du groupe de mémoires tampons](http://mariadb.com/kb/en/mariadb/xtradbinnodb-buffer-pool/#dumping-and-restoring-the-buffer-pool) dans la documentation MariaDB.

La préparation du cache est activée par défaut sur les instances de base de données MariaDB versions 10.3 et ultérieures. Pour l'activer, définissez les paramètres `innodb_buffer_pool_dump_at_shutdown` et `innodb_buffer_pool_load_at_startup` avec la valeur 1 dans le groupe de paramètres de votre instance de base de données. La modification de ces valeurs dans un groupe de paramètres affecte toutes les instances de base de données MariaDB qui utilisent ce groupe de paramètres. Pour activer la préparation du cache pour des instances de base de données MariaDB spécifiques, vous aurez peut-être à créer un groupe de paramètres pour ces instances de base de données. Pour plus d'informations sur les groupes de paramètres, consultez [Groupes de paramètres pour Amazon RDS](USER_WorkingWithParamGroups.md).

La préparation du cache fournit principalement une amélioration des performances pour les instances de bases de données qui utilisent le stockage standard. Si vous utilisez le stockage PIOPS, vous ne constatez généralement pas d'amélioration significative des performances.

**Important**  
Si votre instance de base de données MariaDB ne se ferme pas normalement, comme lors d’un basculement, l’état du groupe de mémoires tampons n’est pas enregistré sur le disque. Dans ce cas, MariaDB charge n’importe quel fichier du groupe de mémoires tampons disponible au redémarrage de l’instance de base de données. Il n’en résulte aucun dommage, mais le groupe de mémoires tampons restauré peut ne pas refléter l’état le plus récent du groupe de mémoires tampons avant le redémarrage. Pour vous assurer d’avoir un état récent du groupe de mémoires tampons disponible afin de préparer le cache au démarrage, il est recommandé que vous vidiez régulièrement le groupe de mémoires tampons « à la demande ». Vous pouvez vider ou charger le groupe de mémoires tampons à la demande.  
Vous pouvez créer un événement pour vider le groupe de mémoires tampons automatiquement et à intervalles réguliers. Par exemple, l’instruction suivante crée un événement nommé `periodic_buffer_pool_dump` qui vide le groupe de mémoires tampons toutes les heures.   

```
1. CREATE EVENT periodic_buffer_pool_dump 
2.    ON SCHEDULE EVERY 1 HOUR 
3.    DO CALL mysql.rds_innodb_buffer_pool_dump_now();
```
Pour plus d'informations, consultez [Événements](http://mariadb.com/kb/en/mariadb/stored-programs-and-views-events/) dans la documentation MariaDB.

## Vidage et chargement du groupe de mémoires tampons à la demande
<a name="MariaDB.Concepts.XtraDBCacheWarming.OnDemand"></a>

Vous pouvez enregistrer et charger le cache à la demande à l'aide des procédures stockées suivantes :
+ Pour vider l’état actuel du groupe de mémoires tampons sur le disque, appelez la procédure stockée [mysql.rds\$1innodb\$1buffer\$1pool\$1dump\$1now](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_dump_now).
+ Pour charger l’état enregistré du groupe de mémoires tampons à partir du disque, appelez la procédure stockée [mysql.rds\$1innodb\$1buffer\$1pool\$1load\$1now](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_load_now).
+ Pour annuler une opération de chargement en cours, appelez la procédure stockée [mysql.rds\$1innodb\$1buffer\$1pool\$1load\$1abort](mysql-stored-proc-warming.md#mysql_rds_innodb_buffer_pool_load_abort).