Atualizações do mecanismo de banco de dados do Aurora MySQL de 2022-10-25 (versão 2.11.0, compatível com MySQL 5.7.12). Essa versão não está disponível para novas criações. - Amazon Aurora

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Atualizações do mecanismo de banco de dados do Aurora MySQL de 2022-10-25 (versão 2.11.0, compatível com MySQL 5.7.12). Essa versão não está disponível para novas criações.

Versão: 2.11.0

O Aurora MySQL 2.11.0 está disponível para o público. As versões do Aurora MySQL 2.x são compatíveis com o MySQL 5.7.12. Para obter mais informações sobre alterações da comunidade, consulte Changes in MySQL 5.7.12 (2016-04-11, General Availability).

As versões do Aurora MySQL atualmente compatíveis são 1.19.5, 1.19.6, 1.22.*, 1.23.*, 2.04.*, 2.07.*, 2.08.*, 2.09.*, 2.10.*, 2.11.*, 3.01.* e 3.02.*.

Você pode atualizar um cluster de banco de dados existente do Aurora MySQL 2.* para o Aurora MySQL 2.11.0. Para clusters que executam o Aurora MySQL versão 1, você pode atualizar um cluster existente do Aurora MySQL 1.23 ou posterior diretamente para 2.11.0. Também é possível restaurar um snapshot de qualquer versão atualmente compatível do Aurora MySQL para o Aurora MySQL 2.11.0.

Se você atualizar um banco de dados global do Aurora MySQL para uma versão 2.11.* e tiver o encaminhamento de gravação ativado, deverá atualizar os clusters de banco de dados primário e secundários para exatamente a mesma versão, incluindo o nível de patch, para continuar usando o encaminhamento de gravação. Para obter mais informações sobre como fazer upgrade da versão secundária de um banco de dados global do Aurora, consulte Minor version upgrades.

Se você tiver alguma dúvida ou preocupação, o AWS Support está disponível nos fóruns da comunidade e por meio do AWS Support. Para obter mais informações, consulte Manutenção de um cluster de banco de dados do Amazon Aurora no Guia do usuário do Amazon Aurora.

nota

Para obter informações sobre como atualizar seu cluster de banco de dados do Aurora MySQL, consulte Atualizando a versão secundária ou o nível de patch de um cluster de banco de dados de Aurora MySQL no Guia do usuário do Amazon Aurora.

Melhorias

Correção de problemas de segurança e CVEs listados abaixo:

Correções e outras melhorias para ajustar o tratamento em um ambiente gerenciado. Correções adicionais do CVE abaixo:

Novos recursos:

  • Com o lançamento do Aurora MySQL versão 2.11, uma nova atualização do sistema operacional está disponível. Recomendamos que você aplique essa atualização pendente do sistema operacional a todas as instâncias de banco de dados do Aurora MySQL após o upgrade para a versão 2.11. Para obter mais informações, consulte Trabalhar com atualizações do sistema operacional.

  • Uma nova opção de configuração dinâmica, innodb_deadlock_detect, pode ser usada para desabilitar a detecção de impasse. Em sistemas de alta simultaneidade, a detecção de deadlock pode causar uma desaceleração quando vários segmentos aguardam o mesmo bloqueio. Às vezes, pode ser mais eficiente desabilitar a detecção de impasse e confiar na configuração innodb_lock_wait_timeout para reversão de transações quando ocorre um impasse. (Bug nº 23477773) Mais informações sobre a detecção de impasse do Innodb podem ser encontradas na documentação do MySQL.

  • As funções UUID_TO_BIN, BIN_TO_UUID e IS_UUID do MySQL 8.0 foram adicionadas. Mais informações sobre o uso dessas funções podem ser encontradas em MySQL Miscellaneous function.

  • Adicionado suporte para dicas do otimizador, permitindo que o usuário habilite ou desabilite a consulta paralela do Aurora MySQL por tabela ou por consulta.

  • Removido o suporte ao tipo de instância R3.

  • Adicionado suporte para instâncias R6i.

Melhorias de disponibilidade:

  • Corrigido um problema que pode impedir a replicação lógica entre regiões em um cluster de banco de dados devido ao arquivo de log binário incorreto e à posição gravada nos logs de erros. Esse problema pode ocorrer quando o mecanismo é reiniciado após a execução de uma declaração de DDL.

  • Corrigido um problema que, em raras condições, pode fazer com que as instâncias do leitor do Aurora sejam reiniciadas ao executar instruções da lista de controle de acesso (ACL), como GRANT e FLUSH na instância do gravador. É mais provável que esse problema afete instâncias do leitor com um grande número de usuários e operações de ACL (por exemplo, alterações de permissão).

  • Corrigido um problema que, em raras condições, pode fazer com que a instância do gravador seja reiniciada ou executada um failover quando uma transação acessa uma linha que está sendo excluída por outra transação.

  • Melhora no desempenho da pesquisa de frases em texto completo para reduzir significativamente o tempo necessário para pesquisar frases em uma tabela com índices de texto completo.

  • Corrigido um problema em que, após a reinicialização de uma instância do gravador, ela travava em uma recuperação lenta e, posteriormente, reiniciava novamente. Esse problema ocorre quando há um grande número de linhas não confirmadas no banco de dados no momento da reinicialização inicial.

  • Corrigido um problema que, em raras ocasiões, faz com que o servidor de banco de dados seja reiniciado por conta de uma longa espera de semáforo quando o thread do detector de impasse trava.

  • Corrigido um problema que, em raras ocasiões, pode fazer com que o banco de dados seja reiniciado por conta de uma longa espera de semáforo quando o thread de E/S atinge um impasse.

  • A inserção rápida não está habilitada nesta versão do Aurora MySQL, devido a um problema que pode causar inconsistências ao executar consultas como, e. INSERT INTO SELECT FROM Para obter mais informações sobre a otimização rápida de inserções, consulte Melhorias de desempenho do Amazon Aurora MySQL.

Melhorias gerais:

  • Corrigido um problema que pode fazer com que o servidor de banco de dados seja reiniciado quando todas as condições a seguir são verdadeiras:

    • ALLOW_INVALID_DATES está desabilitado no MODO SQL.

    • O servidor do banco de dados está processando uma declaração INSERT, UPDATE, DELETE ou SELECT com um valor inválido do tipo DATETIME, de forma que o mês não esteja entre 1 e 12.

  • Corrigido um problema em que o período de retenção de logs binários não era respeitado quando o log binário era definido como OFF, resultando em uma utilização de armazenamento maior do que a esperada. Após essa correção, os logs binários serão eliminados com base no período de retenção. Mais informações sobre como configurar o período de retenção de logs binários podem ser encontradas no Guia do usuário do Aurora MySQL.

  • Corrigido um problema que pode fazer com que a memória disponível na instância do banco de dados diminua quando determinadas declarações SQL da linguagem de controle de dados (DCL), como GRANT, FLUSH PRIVILEGES etc. são executadas nessa instância. O uso frequente dessas instruções pode fazer com que a memória liberável continue diminuindo e pode fazer com que a instância do banco de dados seja reiniciada devido a out-of-memory problemas. O uso dessas declarações na instância do gravador também pode reduzir a memória que pode ser liberada nas instâncias do leitor.

  • Apresentado um tamanho maior de buffer de leitura para leituras realizadas a partir dos logs de retransmissão para minimizar o número de operações de E/S de leitura, o que reduz a contenção entre os threads de E/S e SQL.

  • Corrigido um problema que fazia com que o procedimento armazenado mysql.rds_rotate_slow_log falhasse com a mensagem de erro “A tabela 'mysql.slow_log_backup' não existe”.

  • Corrigido um problema em que a invalidação excessiva do cache de consulta causa um uso de CPU e latências maiores do que o esperado na réplica de leitura devido à necessidade da réplica de leitura ler os dados do disco em vez do cache de consulta.

  • Corrigido um problema que permitia que os usuários executassem os comandos INSTALL PLUGIN e UNINSTALL PLUGIN em uma instância do leitor, o que pode causar um impasse em LOCK_plugin, LOCK_system_variables_hash, LOCK_global_system_variables. Agora, essas declarações só podem ser executadas na instância do gravador em um cluster de banco de dados.

  • Corrigido um problema em que clusters podem ter uma latência de confirmação maior do que a esperada quando log binário é habilitado. Isso afeta todas as transações que geram grandes eventos de log binário (com mais de 500 MB).

  • Corrigido um problema que pode fazer com que a métrica trx_active_transactions na tabela INFORMATION_SCHEMA.INNODB_METRICS tenha um valor incorreto.

  • Corrigido um problema que pode interromper a replicação lógica devido ao arquivo de log binário se tornar inconsistente ao executar uma reversão para o ponto de salvamento de uma transação grande.

  • Hashes de credenciais mascarados em general-log e audit-log por slow-query-log padrão usando um segredo de máscara consistente. Isso pode ser configurado por meio do parâmetro aurora_mask_password_hashes_type.

  • Corrigido um problema em que a duração do reinício com zero tempo de inatividade (ZDR) era informada incorretamente nos eventos observados pelo cliente.

  • Corrigido um problema que pode fazer com que as chamadas para mysql_rds_import_binlog_ssl_material falhem com o ERRO 1457 do servidor MySQL.

  • Corrigido um problema em que a inicialização do encadeamento de despejo poderia ficar bloqueada com o thread para limpar os logs binários. Isso pode impedir que o arquivo de log binário ativo alterne e, em vez disso, continue crescendo ou causar problemas com novas conexões de réplica de log binário.

  • Corrigido um problema em que o cache de consultas pode retornar resultados obsoletos em uma réplica de leitura do Aurora.

Integração de correções de bug do MySQL Community Edition

Essa versão inclui todas as correções de bugs da comunidade até 5.7, incluindo as indicadas abaixo. Para obter mais informações, consulte MySQL bugs fixed by Aurora MySQL 2.x database engine updates.

  • Corrigido um problema em que o código para ler informações do conjunto de caracteres das tabelas de eventos de declarações do Performance Schema (por exemplo, events_statements_current) não impedia a gravação simultânea nas informações desse conjunto de caracteres. Como resultado, o conjunto de caracteres de texto da consulta SQL pode ser inválido, o que pode resultar na saída do servidor. Com essa correção, um conjunto de caracteres inválido causa o truncamento da coluna SQL_TEXT e impede a saída do servidor. (Bug nº 23540008)

  • InnoDB: reversão de uma correção para o Bug nº 25189192, Bug nº 84038 da comunidade. Corrigido um problema em que, após uma operação RENAME TABLE que movia uma tabela para um esquema diferente, o InnoDB falhava ao atualizar a tabela do dicionário de dados do INNODB_SYS_DATAFILES. Isso resultou em um erro na reinicialização, indicando que não foi possível localizar o arquivo de dados do espaço de tabela.

  • InnoDB: corrigido um problema em que o servidor descartava um índice de chave externa definido internamente ao adicionar um novo índice e tentava utilizar um índice secundário definido em uma coluna virtual gerada como o índice de chave externa, causando a saída do servidor. Agora, o InnoDB permite que uma restrição de chave externa faça referência a um índice secundário definido em uma coluna virtual gerada. (Bug #23533396)

  • Corrigido um problema em que duas sessões executavam simultaneamente uma operação INSERT… ON DUPLICATE KEY UPDATE gerava um impasse. Durante a reversão parcial de uma tupla, outra sessão poderia atualizá-la. A correção desse bug reverte as correções do Bug nº 11758237, Bug nº 17604730 e Bug nº 20040791. (Bug nº 25966845)

  • Reversão de uma correção para o Bug nº 27407480 da comunidade: corrigido um problema em que os privilégios EXECUTE e ALTER ROUTINE não eram concedidos corretamente aos criadores de rotinas, mesmo com automatic_sp_privileges habilitado.

  • Reversão da correção do Bug nº 24671968 da comunidade: corrigido um problema em que uma consulta poderia produzir resultados incorretos se a cláusula WHERE contivesse uma subconsulta dependente, a tabela tivesse um índice secundário nas colunas na lista de seleção seguido pelas colunas na subconsulta e GROUP BY ou DISTINCT permitisse que a consulta usasse uma varredura de índice solta.

  • Corrigido um problema em que a replicação era interrompida se uma instrução de exclusão de várias tabelas fosse emitida em várias tabelas com chaves estrangeiras. (Bug nº 80821)

  • Corrigido um problema em que, em casos especiais, certos erros secundários não eram ignorados, mesmo com slave_skip_errors habilitado. Nos casos em que a abertura e o bloqueio de uma tabela falham ou quando as conversões de campo falham em um servidor que executa a replicação baseada em linhas, o erro é considerado crítico e o estado de slave_skip_errors é ignorado. A correção garante que, com slave_skip_errors habilitado, todos os erros relatados durante a aplicação de uma transação sejam tratados corretamente. (Bug nº 70640, Bug nº 17653275)

  • Corrigido um problema em que uma declaração SET PASSWORD era replicada de uma entidade principal do MySQL 5.6 para uma entidade secundária do MySQL 5.7 ou de uma entidade principal do MySQL 5.7 com a variável de sistema log_builtin_as_identified_by_password definida como ON para uma entidade secundária do MySQL 5.7. O próprio hash da senha também era codificado antes de ser armazenado na entidade secundária. O problema agora foi corrigido e o hash da senha replicada é armazenado conforme passado originalmente para a entidade secundária. (Bug nº 24687073)

  • Corrigido um problema em que a serialização de um valor JSON que consiste em um grande subdocumento encapsulado em vários níveis de matrizes ou objetos JSON, ou ambos, às vezes exigia muito tempo para ser concluída. (Bug nº 23031146)

  • Declarações que não podem ser analisadas (devido, por exemplo, a erros de sintaxe) não são mais gravadas no log de consultas lentas. (Bug nº 33732907)

Comparação com o Aurora MySQL versão 1

Os seguintes recursos do Amazon Aurora MySQL são compatíveis no Aurora MySQL versão 1 (compatível com o MySQL 5.6), mas não são compatíveis atualmente no Aurora MySQL versão 2 (compatível com o MySQL 5.7).

Compatibilidade com o MySQL 5.7

Esta versão do Aurora MySQL é compatível com o MySQL 5.7 e inclui recursos como suporte a JSON, índices espaciais e colunas geradas. O Aurora MySQL usa uma implementação nativa de indexação espacial com curvas de ordem z para oferecer performance de gravação 20 vezes melhor e performance de leitura 10 vezes melhor do que os conjuntos de dados espaciais do MySQL 5.7.

Atualmente, essa versão do Aurora MySQL não oferece suporte aos seguintes recursos do MySQL 5.7:

  • Plugin de replicação de grupo

  • Maior tamanho de página

  • Carregamento de grupo de buffers InnoDB na inicialização

  • Plugin de analisador de texto completo do InnoDB

  • Replicação em várias origens

  • Redimensionamento online do grupo de buffers

  • Plugin de validação de senha

  • Plugins de regravação de consulta

  • Filtragem de replicação

  • A declaração SQL CREATE TABLESPACE