Fazer atualização de uma instância de banco de dados do Amazon RDS Custom para SQL Server
Você pode atualizar uma instância de banco de dados do Amazon RDS Custom para SQL Server modificando-a para utilizar uma nova versão do mecanismo de banco de dados. Para obter informações gerais sobre como atualizar instâncias de banco de dados, consulte Atualizar a versão de mecanismo de uma instância de banco de dados.
Tópicos
Visão geral das atualizações no RDS Custom para SQL Server
O Amazon RDS Custom para SQL Server aceita atualizações de versões principais e secundárias. As atualizações de versão secundária podem incluir patches de segurança, correções de bugs e melhorias no mecanismo. A Microsoft lança essas atualizações como atualizações cumulativas (CUs). As atualizações de versão principal introduzem novos recursos e mudanças de mecanismo entre as versões, como a atualização do SQL Server 2019 para 2022. Você pode aplicar ambas as atualizações imediatamente ou durante as janelas de manutenção programada. Para evitar possíveis problemas de compatibilidade com versões anteriores, recomendamos que antes da atualização você teste suas aplicações em um ambiente de não produção.
O RDS Custom para SQL Server permite que você atualize uma versão de mecanismo fornecida pelo RDS (RPEV) ou uma versão de mecanismo personalizada (CEV).
-
As versões do mecanismo fornecidas pelo RDS (RPEVs) contêm patches atualizados do sistema operacional (SO) e atualizações cumulativas (CUs) do SQL Server.
-
Para uma versão de mecanismo personalizada (CEV), você deve seguir um processo de duas etapas. Primeiro, crie uma CEV com sua versão de destino do SQL Server. Consulte Preparar-se para criar uma CEV para RDS Custom para SQL Server. Essa versão de destino deve ser igual ou mais recente que sua versão atual. Depois que a nova CEV for criada, modifique a instância de banco de dados para usar essa nova versão. Para ter mais informações, consulte Performing a minor version upgrade for Amazon RDS Custom for SQL Server CEV with Multi-AZ
. Não aplique atualizações cumulativas do SQL Server no local à sua instância personalizada do RDS em execução. Depois de criar uma CEV com uma versão específica do SQL Server (por exemplo, SQL Server 2022 CU16), a aplicação de uma atualização cumulativa mais recente diretamente na instância a remove do perímetro de suporte e rela o erro
SP-S3006
. Para corrigir uma instância existente do SQL Server usando uma CEV, crie outra CEV que inclua a atualização cumulativa desejada e modifique a instância existente para mudar para a nova CEV.
Se você atualizar uma instância de banco de dados do RDS Custom para SQL Server em uma implantação multi-AZ, o RDS Custom para SQL Server executará atualizações progressivas para a instância. Essa abordagem minimiza o tempo de inatividade ao atualizar uma instância por vez. O RDS executa as seguintes ações para realizar atualizações progressivas:
-
Atualiza a instância de banco de dados em espera.
-
Faz failover para a instância de banco de dados em espera atualizada, tornando-a a nova instância de banco de dados primária.
-
Atualiza a nova instância de banco de dados em espera.
O tempo de inatividade da instância de banco de dados para implantações multi-AZ é o tempo necessário para o failover.
As seguintes limitações aplicam-se à atualização de uma instância de banco de dados do RDS Custom para SQL Server:
-
Não há suporte para a opção de banco de dados personalizado e grupos de parâmetros.
-
Quaisquer volumes de armazenamento adicionais que você anexar à instância de banco de dados do RDS Custom para SQL Server não serão anexados após a atualização.
-
Para CEVs, a aplicação de atualizações cumulativas do SQL Server no local não é permitida e resulta na remoção da instância do perímetro de suporte.
Atualizar a versão principal e secundária do mecanismo
As atualizações de versões principais e secundárias do mecanismo são irreversíveis e sempre devem ser feitas para uma versão mais recente. Para identificar as versões de destino disponíveis, use o AWS Management Console e escolha entre as versões disponíveis ao modificar a instância de banco de dados. Também é possível usar o comando describe-db-engine-versions
da CLI ou o comando DescribeDBEngineVersions da API do RDS.
Para Linux, macOS ou Unix:
aws rds describe-db-engine-versions \ --engine custom-sqlserver-se \ --engine-version
15.00.4322.2.v1
\ --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" \ --output table
Para Windows:
aws rds describe-db-engine-versions ^ --engine custom-sqlserver-se ^ --engine-version
15.00.4322.2.v1
^ --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" ^ --output table
A saída mostra as versões disponíveis do mecanismo de destino:
-------------------------- |DescribeDBEngineVersions| +------------------------+ | EngineVersion | +------------------------+ | 15.00.4410.1.v1 | | 15.00.4415.2.v1 | | 15.00.4430.1.v1 | | 16.00.4165.4.v1 | | 16.00.4175.1.v1 | | 16.00.4185.3.v1 | +------------------------+
Depois de identificar sua versão de destino, use o AWS Management Console e siga as instruções em Modificar uma instância de banco de dados do RDS Custom for SQL Server. Também é possível usar o comando modify-db-instance
da CLI ou o comando ModifyDBInstance da API do RDS.
Para Linux, macOS ou Unix:
aws rds modify-db-instance \ --db-instance-identifier
DB_INSTANCE_IDENTIFIER
\ --engine-versionENGINE_VERSION
\ --allow-major-version-upgrade \ --regionRegion
\ --no-apply-immediately
Para Windows:
aws rds modify-db-instance ^ --db-instance-identifier
DB_INSTANCE_IDENTIFIER
^ --engine-versionENGINE_VERSION
^ --allow-major-version-upgrade ^ --regionRegion
^ --no-apply-immediately
nota
Você deve incluir o parâmetro --allow-major-version-upgrade
para realizar atualizações de versão principal.
Nível de compatibilidade do banco de dados
Você pode usar os níveis de compatibilidade do banco de dados Microsoft SQL Server para ajustar alguns comportamentos de banco de dados de forma a imitar as versões anteriores do SQL Server. Para ter mais informações, consulte Nível de compatibilidade
Quando você atualiza sua instância de banco de dados, todos os bancos de dados existentes permanecem em seus níveis de compatibilidade originais. Por exemplo, se você fizer a atualização do SQL Server 2019 para o SQL Server 2022, todos os bancos de dados existentes terão um nível de compatibilidade de 150. Qualquer novo banco de dados criado após a atualização terá um nível de compatibilidade de 160.
Você pode alterar o nível de compatibilidade de um banco de dados usando o comando ALTER DATABASE. Por exemplo, para alterar um banco de dados denominado customeracct
para que ele seja compatível com o SQL Server 2022, emita o seguinte comando:
ALTER DATABASE customeracct SET COMPATIBILITY_LEVEL = 160