Configuração - Amazon Relational Database Service

Configuração

Os procedimentos armazenados a seguir definem e mostram parâmetros de configuração, como para retenção de arquivos de log binários.

mysql.rds_set_configuration

Especifica o número de horas para retenção de logs binários ou o número de segundos para atrasar a replicação.

Sintaxe

CALL mysql.rds_set_configuration(name,value);

Parâmetros

name

(Opcional) O nome do parâmetro de configuração a definir.

value

O valor do parâmetro de configuração.

Observações de uso

O procedimento mysql.rds_set_configuration oferece suporte aos seguintes parâmetros de configuração:

Os parâmetros de configuração são armazenados permanentemente e sobrevivem a qualquer reinicialização ou failover da instância de banco de dados.

horas de retenção do log binário

O parâmetro binlog retention hours é usado para especificar o número de horas para reter arquivos de log binários. O Amazon RDS normalmente elimina um log binário o mais rápido possível, mas o log binário ainda pode ser necessário para a replicação com um banco de dados MySQL externo ao RDS.

O valor padrão de binlog retention hours é NULL. Para o RDS para MySQL, NULL significa que os logs binários não são retidos (0 horas).

Para especificar o número de horas para reter os logs binários em uma instância de banco de dados, use o procedimento armazenado mysql.rds_set_configuration e especifique um período com tempo suficiente para que a replicação ocorra, conforme exibido no exemplo a seguir.

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

nota

Não é possível usar o valor 0 para binlog retention hours.

Para instâncias de banco de dados MySQL, o valor máximo de binlog retention hours é de 168 (7 dias).

Após configurar o período de retenção, monitore o uso de armazenamento da instância de banco de dados para garantir que os logs binários retidos não consumam muito armazenamento.

atraso na origem

Use o parâmetro source delay em uma réplica de leitura para especificar o número de segundos para atrasar a replicação da réplica de leitura para a instância de banco de dados de origem. O Amazon RDS replica as alterações o mais rápido possível, mas talvez você queira que alguns ambientes atrasem a replicação. Por exemplo, quando a replicação é atrasada, você pode efetuar roll forward de uma réplica de leitura atrasada para o momento imediatamente antes de um desastre. Se uma tabela for descartada acidentalmente, use a replicação atrasada para recuperá-la rapidamente. O valor padrão de target delay é 0 (não atrasar a replicação).

Quando você usa esse parâmetro, ele executa mysql.rds_set_source_delay e aplica CHANGE primary TO MASTER_DELAY = valor de entrada. Se for bem-sucedido, o procedimento salvará o parâmetro source delay na tabela mysql.rds_configuration.

Para especificar o número de segundos em que o Amazon RDS atrasará a replicação de uma instância de banco de dados de origem, use o procedimento armazenado mysql.rds_set_configuration e especifique o número de segundos de atraso da replicação. No exemplo a seguir, a replicação é atrasada por pelo menos uma hora (3.600 segundos).

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

Depois, o procedimento executa mysql.rds_set_source_delay(3600).

O limite do parâmetro source delay é de um dia (86.400 segundos).

nota

O parâmetro source delay não é compatível com o RDS para MySQL versão 8.0 nem com as versões anteriores à 10.2 do MariaDB.

atraso de destino

Use o parâmetro target delay para especificar o número de segundos para atrasar a replicação entre uma instância de banco de dados e quaisquer réplicas de leitura gerenciadas pelo RDS criadas futuramente com base nessa instância. Esse parâmetro é ignorado para réplicas de leitura não gerenciadas pelo RDS. O Amazon RDS replica as alterações o mais rápido possível, mas talvez você queira que alguns ambientes atrasem a replicação. Por exemplo, quando a replicação é atrasada, você pode efetuar roll forward de uma réplica de leitura atrasada para o momento imediatamente antes de um desastre. Se uma tabela for descartada acidentalmente, use a replicação atrasada para recuperá-la rapidamente. O valor padrão de target delay é 0 (não atrasar a replicação).

Para a recuperação de desastres, você pode usar esse parâmetro de configuração com o procedimento armazenado mysql.rds_start_replication_until ou o mysql.rds_start_replication_until_gtid. Para efetuar roll forward de alterações para uma réplica de leitura atrasada no momento imediatamente antes de um desastre, é possível executar o procedimento mysql.rds_set_configuration com esse conjunto de parâmetros. Depois que o procedimento mysql.rds_start_replication_until ou mysql.rds_start_replication_until_gtid interromper a replicação, é possível promover a réplica de leitura para ser a nova instância de banco de dados primária usando as instruções em Promoção de uma réplica de leitura a uma instância de banco de dados autônoma.

Para usar o procedimento mysql.rds_rds_start_replication_until_gtid, a replicação baseada em GTID deve estar habilitada. Para ignorar uma transação específica baseada em GTID que seja conhecida por causar desastres, use o procedimento armazenado mysql.rds_skip_transaction_with_gtid. Para ter mais informações sobre como trabalhar com a replicação baseada em GTID, consulte Usar a replicação baseada em GTID para o Amazon RDS for MySQL.

Para especificar o número de segundos em que o Amazon RDS atrasará a replicação de uma réplica de leitura, use o procedimento armazenado mysql.rds_set_configuration e especifique o número de segundos de atraso da replicação. O exemplo a seguir especifica que a replicação é atrasada por pelo menos uma hora (3.600 segundos).

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

O limite do parâmetro target delay é de um dia (86.400 segundos).

nota

O parâmetro target delay não é compatível com o RDS para MySQL versão 8.0 nem com as versões anteriores à 10.2 do MariaDB.

mysql.rds_show_configuration

A quantidade de horas em que os logs binários são mantidos.

Sintaxe

CALL mysql.rds_show_configuration;

Observações de uso

Para verificar o número de horas durante as quais o Amazon RDS vai reter os logs binários, use o procedimento armazenado mysql.rds_show_configuration.

Exemplos

O exemplo a seguir mostra exibe o período de retenção:

call mysql.rds_show_configuration; name value description binlog retention hours 24 binlog retention hours specifies the duration in hours before binary logs are automatically deleted.