Estratégias para atualizar seu arquivo de fuso horário - Amazon Relational Database Service

Estratégias para atualizar seu arquivo de fuso horário

Atualizar o mecanismo de banco de dados e adicionar a opção TIMEZONE_FILE_AUTOUPGRADE a um grupo de opções são operações separadas. Adicionar a opção TIMEZONE_FILE_AUTOUPGRADE iniciará a atualização do arquivo de fuso horário se um mais recente estiver disponível. É necessário executar os seguintes comandos (somente as opções relevantes são mostradas) imediatamente ou na próxima janela de manutenção:

  • Atualize o mecanismo de banco de dados usando somente o seguinte comando da CLI do RDS:

    modify-db-instance --engine-version name ...
  • Adicione a opção TIMEZONE_FILE_AUTOUPGRADE somente usando o seguinte comando da CLI:

    add-option-to-option-group --option-group-name name --options OptionName=TIMEZONE_FILE_AUTOUPGRADE ...
  • Atualize o mecanismo de banco de dados e adicione um novo grupo de opções à instância usando o seguinte comando da CLI:

    modify-db-instance --engine-version name --option-group-name name ...

A estratégia de atualização depende de atualizar o banco de dados e arquivo de fuso horário juntos ou realizar apenas uma dessas operações. Lembre-se de que, se você atualizar o grupo de opções e, depois, atualizar o mecanismo de banco de dados em operações de API separadas, é possível que uma atualização do arquivo de fuso horário esteja em andamento ao atualizar o mecanismo de banco de dados.

Para os exemplos nesta seção, suponha o seguinte:

  • Você ainda não adicionou TIMEZONE_FILE_AUTOUPGRADE ao grupo de opções atualmente associado à instância de banco de dados.

  • Sua instância de banco de dados usa a versão de banco de dados 19.0.0.0.ru-2019-07.rur-2019-07.r1 e o arquivo de fuso horário DSTv33.

  • O sistema de arquivos da sua instância de banco de dados inclui o arquivo DStv34.

  • A atualização de versão 19.0.0.0.ru-2022-10.rur-2022-10.r1 inclui DSTv35.

Para atualizar o arquivo de fuso horário, você pode usar as seguintes estratégias.

Atualizar o arquivo de fuso horário sem atualizar o mecanismo

Nesse cenário, seu banco de dados está usando o DSTv33, mas o DSTv34 está disponível no sistema de arquivos de sua instância de banco de dados. Você deseja atualizar o arquivo de fuso horário usado por sua instância de banco de dados de DSTv33 para DSTv34, mas não deseja atualizar seu mecanismo para uma nova versão secundária, que inclua DSTv35.

Em um comando add-option-to-option-group, adicione TIMEZONE_FILE_AUTOUPGRADE ao grupo de opções usado pela instância de banco de dados. Especifique se deseja adicionar a opção imediatamente ou adiá-la para a janela de manutenção. Depois de aplicar a opção TIMEZONE_FILE_AUTOUPGRADE, o RDS faz o seguinte:

  1. Confere se há uma nova versão do DST.

  2. Determina se o DSTv34 está disponível no sistema de arquivos.

  3. Atualiza o arquivo de fuso horário imediatamente.

Atualizar o arquivo de fuso horário e a versão do mecanismo de banco de dados

Nesse cenário, seu banco de dados está usando o DSTv33, mas o DSTv34 está disponível no sistema de arquivos de sua instância de banco de dados. Você deseja atualizar seu mecanismo de banco de dados para a versão secundária 19.0.0.0.ru-2022-10.rur-2022-10.r1, que inclui DSTv35 e atualizar o arquivo de fuso horário para DSTv35 durante a atualização do mecanismo. Portanto, seu objetivo é ignorar o DSTv34 e atualizar os arquivos de fuso horário diretamente para DSTv35.

Para atualizar o mecanismo e o arquivo de fuso horário juntos, execute modify-db-instance com as opções --option-group-name e --engine-version. É possível executar o comando imediatamente ou adiá-lo para a janela de manutenção. In --option-group-name, especifique um grupo de opções que inclua a opção TIMEZONE_FILE_AUTOUPGRADE. Por exemplo:

aws rds modify-db-instance --db-instance-identifier my-instance \ --engine-version new-version \ ----option-group-name og-with-timezone-file-autoupgrade \ --apply-immediately

O RDS começa a atualizar o mecanismo para 19.0.0.0.ru-2022-10.rur-2022-10.r1. Depois que a opção TIMEZONE_FILE_AUTOUPGRADE é aplicada, o RDS confere se há uma nova versão do DST, percebe que o DSTv35 está disponível em 19.0.0.0.ru-2022-10.rur-2022-10.r1 e inicia imediatamente a atualização para DSTv35.

Para atualizar o mecanismo imediatamente e, depois, atualizar o arquivo de fuso horário, execute as operações na sequência:

  1. Atualize o mecanismo de banco de dados usando o seguinte comando da CLI:

    aws rds modify-db-instance \ --db-instance-identifier my-instance \ --engine-version new-version \ --apply-immediately
  2. Adicione a opção TIMEZONE_FILE_AUTOUPGRADE ao grupo de opções anexado à instância usando o seguinte comando da CLI:

    aws rds add-option-to-option-group \ --option-group-name og-in-use-by-your-instance \ --options OptionName=TIMEZONE_FILE_AUTOUPGRADE \ --apply-immediately

Atualizar a versão do mecanismo de banco de dados sem atualizar o arquivo de fuso horário

Nesse cenário, seu banco de dados está usando o DSTv33, mas o DSTv34 está disponível no sistema de arquivos de sua instância de banco de dados. Você deseja atualizar seu mecanismo de banco de dados para a versão 19.0.0.0.ru-2022-10.rur-2022-10.r1, que inclui o DSTv35, mas reter o arquivo de fuso horário DSTv33. Você pode fazer isso pelas seguintes razões:

  • Seus dados não usam o tipo de dados TIMESTAMP WITH TIME ZONE.

  • Seus dados usam o tipo de dados TIMESTAMP WITH TIME ZONE, mas eles não são afetados pelas alterações de fuso horário.

  • Você deseja adiar a atualização do arquivo de fuso horário porque não pode tolerar o tempo de inatividade extra.

Sua estratégia depende de qual das seguintes possibilidades é verdadeira:

  • Sua instância de banco de dados não está associada a um grupo de opções que inclui TIMEZONE_FILE_AUTOUPGRADE. No comando modify-db-instance, não especifique um novo grupo de opções para que o RDS não atualize o arquivo de fuso horário.

  • A instância de banco de dados está atualmente associada a um grupo de opções que inclui TIMEZONE_FILE_AUTOUPGRADE. Em m um único comando modify-db-instance, associe a instância de banco de dados a um grupo de opções que não inclua TIMEZONE_FILE_AUTOUPGRADE e, depois, atualize o mecanismo de banco de dados para 19.0.0.0.ru-2022-10.rur-2022-10.r1.