mysql.rds_set_configuration - Amazon Relational Database Service

mysql.rds_set_configuration

Spécifie le nombre d'heures pendant lequel les journaux binaires doivent être conservés ou le nombre de secondes pendant lequel retarder la réplication.

Syntaxe

CALL mysql.rds_set_configuration(name,value);

Paramètres

nom

Nom du paramètre de configuration à définir.

valeur

Valeur du paramètre de configuration.

Notes d'utilisation

La procédure stockée mysql.rds_set_configuration est disponible dans les versions de Amazon RDS MySQL suivantes :

  • MySQL 5.6

  • MySQL 5.7

  • MySQL 8.0

La procédure mysql.rds_set_configuration prend en charge des paramètres de configuration suivants :

nombre d'heures de conservation du journal binaire

Le paramètre binlog retention hours est utilisé pour spécifier le nombre d'heures de rétention de fichiers de journaux binaires. Amazon RDS purge normalement un journal binaire dès que possible, mais il se peut que le journal binaire continue d'être requis pour la réplication avec une base de données MySQL extérieure à Amazon RDS. La valeur par défaut de binlog retention hours est NULL (ne pas conserver les journaux binaires).

Pour spécifier le nombre d'heures pendant lequel Amazon RDS doit conserver les journaux binaires sur une instance de base de données, utilisez la procédure stockée mysql.rds_set_configuration et spécifiez une période suffisamment longue pour que la réplication se produise, comme illustré dans l'exemple suivant.

call mysql.rds_set_configuration('binlog retention hours', 24);

Pour les instances de base de données MySQL, la valeur binlog retention hours maximale est 168 (7 jours).

Après avoir défini la période de rétention, surveillez l'utilisation du stockage de l'instance de base de données afin de garantir que les journaux binaires conservés n'utilisent pas un espace de stockage trop grand.

target delay

Utilisez le paramètre target delay pour spécifier le nombre de secondes dont il faut retarder la réplication à partir de la base de données source vers le réplica en lecture. Le décalage spécifie s'applique aux nouveaux réplicas créés à partir de l'instance de base de données actuelle. Amazon RDS réplique normalement les modifications dès que possible, mais certains environnement peuvent vouloir retarder la réplication. Par exemple, lorsque la réplication est retardée, vous pouvez restaurer par progression un réplica en lecture retardé au moment précédant un sinistre. Si une table est supprimée par mégarde, vous pouvez utiliser la réplication retardée pour la récupérer rapidement. La valeur par défaut de target delay est 0 (ne pas retarder la réplication).

Pour la reprise après sinistre, vous pouvez utiliser ce paramètre de configuration avec la procédure stockée mysql.rds_start_replication_until ou mysql.rds_start_replication_until_gtid. Pour restaurer par progression les modifications dans un réplica en lecture retardé au moment précédant un sinistre, vous pouvez exécuter la procédure mysql.rds_set_configuration avec ce paramètre défini. Une fois que la procédure mysql.rds_start_replication_until ou mysql.rds_start_replication_until_gtid a arrêté la réplication, vous pouvez promouvoir le réplica en lecture pour qu'il devienne la nouvelle instance de base de données principale, en utilisant les instructions figurant dans Promotion d'un réplica en lecture en instance de bases de données autonome.

Pour utiliser la procédure mysql.rds_rds_start_replication_until_gtid, la réplication basée sur des identifiants de transaction globaux (GTID) doit être activée. Pour ignorer une transaction basée sur des identifiants de transaction globaux spécifique qui est réputée pour entraîner des défaillances, vous pouvez utiliser la procédure stockée mysql.rds_skip_transaction_with_gtid. Pour plus d'informations sur la gestion d'une réplication basée sur des identifiants de transaction globaux, consultez Utilisation de la réplication basée sur des identifiants de transaction globaux (GTID) pour Amazon RDS MySQL.

Pour spécifier le nombre de secondes pendant lesquelles Amazon RDS retardera la réplication vers un réplica en lecture, utilisez la procédure stockée mysql.rds_set_configuration et spécifiez le nombre de secondes dont il faut retarder la réplication. L'exemple suivant spécifie que la réplication est retardée d'au moins une heure (3 600 secondes).

call mysql.rds_set_configuration('target delay', 3600);

La limite du paramètre target delay est une journée (soit 86 400 secondes).

Note

Le paramètre target delay est pris en charge uniquement pour Amazon RDS MySQL.

Le paramètre target delay n'est pas pris en charge pour Amazon RDS MySQL version 8.0.