mysql.rds_execute_operation - Amazon Relational Database Service

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.

mysql.rds_execute_operation

Exécute des opérations InnoDB pour gérer les états du pool de mémoire tampon et le tablespace temporaire. Cette procédure peut être utilisée pour contrôler dynamiquement les opérations InnoDB telles que le vidage et le chargement des états du pool de mémoire tampon ou la troncation d’un tablespace temporaire.

Syntaxe

CALL mysql.rds_execute_operation(operation);

Paramètres

fonctionnement

String. Les opérations InnoDB à exécuter. Les valeurs valides sont :

  • innodb_buffer_pool_dump_now : opération qui vide l’état actuel du pool de tampons.

  • innodb_buffer_pool_load_now : opération qui charge l’état du pool de mémoire tampon enregistré.

  • innodb_buffer_pool_load_abort : opération qui interrompt une opération de chargement du pool de mémoire tampon.

  • innodb_truncate_temporary_tablespace_now : opération qui tronque le tablespace temporaire.

Notes d’utilisation

Cette procédure n'est prise en charge que pour les instances de base de données MariaDB exécutant MariaDB version 11.8 ou supérieure.

Pendant l’exécution, la journalisation binaire est temporairement désactivée pour empêcher la réplication de ces commandes administratives.

La procédure gère une piste d’audit en enregistrant toutes les opérations dans la table mysql.rds_history.

Exemples

L’exemple suivant illustre la réduction temporaire du tablespace à l’aide de mysql.rds_execute_operation :

Pour vérifier la taille actuelle du tablespace temporaire, exécutez l’une des requêtes suivantes :

SELECT FILE_SIZE FROM information_schema.innodb_sys_tablespaces WHERE name LIKE 'innodb_temporary'; +------------+ | FILE_SIZE | +------------+ | 6723469312 | -- 6.3 GB +------------+

Lorsque vous supprimez des tables temporaires, cela ne réduit pas l’utilisation du stockage dans le tablespace global. Pour réduire la taille du tablespace global, exécutez la commande mysql.rds_execute_operation pour réduire le tablespace temporaire.

CALL mysql.rds_execute_operation('innodb_truncate_temporary_tablespace_now'); Query OK, 2 rows affected (0.004 sec)

Après avoir exécuté la procédure, vérifiez que l’espace a été récupéré.

SELECT FILE_SIZE FROM information_schema.innodb_sys_tablespaces WHERE name LIKE 'innodb_temporary'; +-----------+ | FILE_SIZE | +-----------+ | 12582912 | -- 12 MB +-----------+
Note

L’opération de réduction peut prendre du temps, en fonction de la taille du tablespace temporaire et de la charge de travail actuelle.

Important

Le tablespace temporaire ne se réduit que lorsque toutes les tables temporaires qui ont contribué à sa taille ne sont plus utilisées. Nous vous recommandons d’exécuter cette procédure lorsqu’aucun tablespace temporaire n’est actif sur l’instance.