Confronto tra Aurora My SQL versione 2 e Aurora My versione 3 SQL - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Confronto tra Aurora My SQL versione 2 e Aurora My versione 3 SQL

Usa quanto segue per conoscere le modifiche da tenere a mente quando aggiorni il cluster Aurora My SQL versione 2 alla versione 3.

Supporto per Atomic Data Definition Language () DDL

Una delle maggiori modifiche da My SQL 5.7 a 8.0 è l'introduzione dell'Atomic Data Dictionary. Prima di My SQL 8.0, il dizionario My SQL data utilizzava un approccio basato su file per archiviare metadati come definizioni di tabelle (.frm), trigger (.trg) e funzioni separatamente dai metadati del motore di archiviazione (come quelli di InnoDB). Ciò presentava alcuni problemi, tra cui il rischio che le tabelle diventassero «orfane» in caso di imprevisto durante un'DDLoperazione, che causava la non sincronizzazione dei metadati basati su file e del motore di archiviazione.

Per risolvere questo problema, My SQL 8.0 ha introdotto l'Atomic Data Dictionary, che memorizza tutti i metadati in un set di tabelle InnoDB interne nello schema. mysql Questa nuova architettura offre un modo transazionale e ACIDconforme per gestire i metadati del database, risolvendo il problema «atomico» del vecchio approccio basato su file. DDL Per ulteriori informazioni sull'Atomic Data Dictionary, consulta Rimozione dell'archiviazione di metadati basata su file e Supporto per le dichiarazioni di definizione dei dati Atomic nel My Reference Manual. SQL

A causa di questa modifica dell'architettura, è necessario considerare quanto segue quando si esegue l'aggiornamento da Aurora My SQL versione 2 alla versione 3:

  • I metadati basati su file della versione 2 devono essere migrati nelle nuove tabelle del dizionario dei dati durante il processo di aggiornamento alla versione 3. A seconda del numero di oggetti del database migrati, questa operazione potrebbe richiedere del tempo.

  • Le modifiche hanno inoltre introdotto alcune nuove incompatibilità che potrebbero dover essere risolte prima di poter eseguire l'aggiornamento da My SQL 5.7 a 8.0. Ad esempio, 8.0 include alcune nuove parole chiave riservate che potrebbero entrare in conflitto con i nomi degli oggetti del database esistenti.

Per aiutarti a identificare queste incompatibilità prima di aggiornare il motore, Aurora My SQL esegue una serie di controlli di compatibilità degli aggiornamenti (precontrolli) per determinare se ci sono oggetti incompatibili nel dizionario del database, prima di eseguire l'aggiornamento del dizionario dei dati. Per ulteriori informazioni sui precontrolli, consulta. Controlli preliminari di aggiornamento delle versioni principali per Aurora My SQL

Differenze di funzionalità tra Aurora My SQL versione 2 e 3

Le seguenti SQL funzionalità di Amazon Aurora My sono supportate in Aurora My SQL for My SQL 5.7, ma non sono supportate in Aurora My for My 8.0: SQL SQL

  • Non puoi usare Aurora My SQL version 3 per Aurora Serverless cluster v1. Aurora La mia SQL versione 3 funziona con Aurora Serverless v2.

  • La modalità Lab non si applica alla SQL versione 3 di Aurora My. Non ci sono funzionalità in modalità lab in Aurora My SQL versione 3. Instant DDL sostituisce la DDL funzionalità online veloce precedentemente disponibile in modalità lab. Per vedere un esempio, consulta DDL istantaneo (Aurora MySQL versione 3).

  • La cache delle query viene rimossa dalla community My SQL 8.0 e anche da Aurora SQL My versione 3.

  • Aurora My SQL version 3 è compatibile con la funzione My SQL hash join della community. L'implementazione specifica di Aurora degli hash join in Aurora My versione 2 non viene utilizzata. SQL Per informazioni sull'utilizzo di hash join con la query parallela Aurora, consultare Abilitazione dell'hash join per cluster di query parallele e Aurora I miei suggerimenti SQL. Per informazioni generali sull'utilizzo degli hash join, consulta Hash Join Optimization nel My Reference Manual. SQL

  • La mysql.lambda_async stored procedure che era obsoleta in Aurora My SQL versione 2 viene rimossa nella versione 3. Per la versione 3, utilizzare invece la funzione asincrona lambda_async.

  • Il set di caratteri predefinito in Aurora My SQL versione 3 è. utf8mb4 In Aurora My SQL versione 2, il set di caratteri predefinito era. latin1 Per informazioni su questo set di caratteri, consultate Il set di caratteri utf8mb4 (codifica Unicode a 4 byte UTF -8) nel My Reference Manual. SQL

Alcune SQL funzionalità di Aurora My sono disponibili per determinate combinazioni di AWS Region e versione del motore DB. Per dettagli, consultare Funzionalità supportate in Amazon Aurora da Regione AWS e motore Aurora DB.

Supporto delle classi di istanza

Aurora My SQL versione 3 supporta un set diverso di classi di istanze rispetto a Aurora My versione 2: SQL

  • Per istanze più grandi, è possibile utilizzare le classi di istanza moderne comedb.r5,db.r6g, edb.x2g.

  • Per istanze più piccole, è possibile utilizzare le classi di istanza moderne come db.t3 e db.t4g.

    Nota

    Consigliamo di utilizzare le classi di istanza database T solo per i server di sviluppo e test o altri server non di produzione. Per ulteriori informazioni sulle classi di istanza T, consulta Utilizzo delle classi di istanza T per lo sviluppo e i test.

Le seguenti classi di istanze di Aurora My SQL versione 2 non sono disponibili per Aurora My versione 3: SQL

  • db.r4

  • db.r3

  • db.t3.small

  • db.t2

Controlla gli script di amministrazione per eventuali CLI istruzioni che creano istanze Aurora SQL My DB. Nomi di classi di istanze hardcode che non sono disponibili per Aurora SQL My versione 3. Se necessario, modifica i nomi delle classi di istanza con quelli supportati da Aurora My SQL versione 3.

Suggerimento

Per controllare le classi di istanza che puoi usare per una combinazione specifica di Aurora My SQL version e AWS Region, usa il describe-orderable-db-instance-options AWS CLI comando.

Per i dettagli sulle classi di istanza Aurora, consultare Classi di istanze DB Amazon Aurora.

Modifiche ai parametri per Aurora My versione 3 SQL

Aurora My SQL versione 3 include nuovi parametri di configurazione a livello di cluster e di istanza. Aurora My SQL versione 3 rimuove anche alcuni parametri presenti in Aurora My versione 2. SQL Alcuni nomi dei parametri vengono modificati a seguito dell'iniziativa per un linguaggio inclusivo. Per la compatibilità con le versioni precedenti, è comunque possibile recuperare i valori dei parametri utilizzando i vecchi nomi o i nuovi nomi. Tuttavia, è necessario utilizzare i nuovi nomi per specificare i valori dei parametri in un gruppo di parametri personalizzato.

In Aurora My SQL versione 3, il valore del lower_case_table_names parametro viene impostato in modo permanente al momento della creazione del cluster. Se utilizzi un valore non predefinito per questa opzione, configura il gruppo di parametri personalizzati Aurora SQL My versione 3 prima dell'aggiornamento. Quindi specificare il gruppo di parametri durante l'operazione di creazione del cluster o del ripristino dello snapshot.

Nota

Con un database globale Aurora basato su Aurora MySQL, non è possibile eseguire un aggiornamento sul posto da Aurora SQL My versione 2 alla versione 3 se il parametro è attivato. lower_case_table_names Utilizzare invece il metodo di ripristino snapshot.

In Aurora My SQL versione 3, i read_only parametri init_connect and non si applicano agli utenti che dispongono del CONNECTION_ADMIN privilegio. incluso l'utente master Aurora. Per ulteriori informazioni, consulta Privilegio basato sui ruoli.

Per l'elenco completo dei parametri del SQL cluster Aurora My, vedere. Parametri a livello di cluster La tabella riporta tutti i parametri di Aurora My SQL versione 2 e 3. La tabella include note che mostrano quali parametri sono nuovi in Aurora My SQL versione 3 o sono stati rimossi da Aurora My versione 3. SQL

Per l'elenco completo dei parametri dell'SQListanza Aurora My, consulta. Parametri a livello di istanza La tabella riporta tutti i parametri di Aurora My SQL versione 2 e 3. La tabella include note che mostrano quali parametri sono nuovi in Aurora My SQL versione 3 e quali parametri sono stati rimossi da Aurora My versione 3. SQL Include anche note che mostrano quali parametri erano modificabili nelle versioni precedenti ma non in Aurora My versione 3. SQL

Per informazioni sui nomi dei parametri modificati, consultare Modifiche linguistiche incluse per Aurora My versione 3 SQL.

Variabili di stato

Per informazioni sulle variabili di stato che non sono applicabili ad Aurora MySQL, consulta. Le mie variabili di SQL stato che non si applicano ad Aurora My SQL

Modifiche linguistiche incluse per Aurora My versione 3 SQL

Aurora My SQL version 3 è compatibile con la versione 8.0.23 dell'edizione My community. SQL Aurora My SQL versione 3 include anche modifiche rispetto a My SQL 8.0.26 relative alle parole chiave e agli schemi di sistema per un linguaggio inclusivo. Ad esempio, il comando SHOW REPLICA STATUS è ora preferito invece di SHOW SLAVE STATUS.

Le seguenti CloudWatch metriche di Amazon hanno nuovi nomi in Aurora SQL My versione 3.

In Aurora My SQL versione 3, sono disponibili solo i nuovi nomi delle metriche. Assicurati di aggiornare eventuali allarmi o altre automazioni che si basano sui nomi delle metriche quando esegui l'upgrade ad Aurora My versione 3. SQL

Vecchio nome Nuovo nome
ForwardingMasterDMLLatency ForwardingWriterDMLLatency
ForwardingMasterOpenSessions ForwardingWriterOpenSessions
AuroraDMLRejectedMasterFull AuroraDMLRejectedWriterFull
ForwardingMasterDMLThroughput ForwardingWriterDMLThroughput

Le seguenti variabili di stato hanno nuovi nomi in Aurora My SQL versione 3.

Per motivi di compatibilità, puoi usare entrambi i nomi nella versione iniziale di Aurora My SQL versione 3. I nomi delle variabili di stato precedenti devono essere rimossi in una versione futura.

Nome da rimuovere Nome nuovo o preferito
Aurora_fwd_master_dml_stmt_duration Aurora_fwd_writer_dml_stmt_duration
Aurora_fwd_master_dml_stmt_count Aurora_fwd_writer_dml_stmt_count
Aurora_fwd_master_select_stmt_duration Aurora_fwd_writer_select_stmt_duration
Aurora_fwd_master_select_stmt_count Aurora_fwd_writer_select_stmt_count
Aurora_fwd_master_errors_session_timeout Aurora_fwd_writer_errors_session_timeout
Aurora_fwd_master_open_sessions Aurora_fwd_writer_open_sessions
Aurora_fwd_master_errors_session_limit Aurora_fwd_writer_errors_session_limit
Aurora_fwd_master_errors_rpc_timeout Aurora_fwd_writer_errors_rpc_timeout

I seguenti parametri di configurazione hanno nuovi nomi in Aurora My SQL versione 3.

Per motivi di compatibilità, è possibile verificare i valori dei parametri nel mysql client utilizzando uno dei due nomi nella versione iniziale di Aurora My SQL versione 3. Puoi utilizzare i nuovi nomi solo quando modifichi i valori in un gruppo di parametri personalizzati. I nomi dei parametri precedenti devono essere rimossi in una versione futura.

Nome da rimuovere Nome nuovo o preferito
aurora_fwd_master_idle_timeout aurora_fwd_writer_idle_timeout
aurora_fwd_master_max_connections_pct aurora_fwd_writer_max_connections_pct
master_verify_checksum source_verify_checksum
sync_master_info sync_source_info
init_slave init_replica
rpl_stop_slave_timeout rpl_stop_replica_timeout
log_slow_slave_statements log_slow_replica_statements
slave_max_allowed_packet replica_max_allowed_packet
slave_compressed_protocol replica_compressed_protocol
slave_exec_mode replica_exec_mode
slave_type_conversions replica_type_conversions
slave_sql_verify_checksum replica_sql_verify_checksum
slave_parallel_type replica_parallel_type
slave_preserve_commit_order replica_preserve_commit_order
log_slave_updates log_replica_updates
slave_allow_batching replica_allow_batching
slave_load_tmpdir replica_load_tmpdir
slave_net_timeout replica_net_timeout
sql_slave_skip_counter sql_replica_skip_counter
slave_skip_errors replica_skip_errors
slave_checkpoint_period replica_checkpoint_period
slave_checkpoint_group replica_checkpoint_group
slave_transaction_retries replica_transaction_retries
slave_parallel_workers replica_parallel_workers
slave_pending_jobs_size_max replica_pending_jobs_size_max
pseudo_slave_mode pseudo_replica_mode

Le seguenti stored procedure hanno nuovi nomi in Aurora My SQL versione 3.

Per motivi di compatibilità, puoi usare entrambi i nomi nella versione iniziale di Aurora My SQL versione 3. I nomi delle procedure precedenti devono essere rimossi in una versione futura.

Nome da rimuovere Nome nuovo o preferito
mysql.rds_set_master_auto_position mysql.rds_set_source_auto_position
mysql.rds_set_external_master mysql.rds_set_external_source
mysql.rds_set_external_master_with_auto_position mysql.rds_set_external_source_with_auto_position
mysql.rds_reset_external_master mysql.rds_reset_external_source
mysql.rds_next_master_log mysql.rds_next_source_log

AUTO_ valori INCREMENT

In Aurora My SQL versione 3, Aurora conserva il AUTO_INCREMENT valore di ogni tabella al riavvio di ogni istanza DB. In Aurora My SQL versione 2, il AUTO_INCREMENT valore non veniva mantenuto dopo il riavvio.

Il AUTO_INCREMENT valore non viene mantenuto quando si configura un nuovo cluster eseguendo il ripristino da un'istantanea, eseguendo un point-in-time ripristino e clonando un cluster. In questi casi, il valore AUTO_INCREMENT viene inizializzato sul valore in base al valore di colonna più grande nella tabella al momento della creazione dello snapshot. Questo comportamento è diverso rispetto a My SQL 8.0, in RDS cui il AUTO_INCREMENT valore viene mantenuto durante queste operazioni.

Replica dei log binari

In My SQL 8.0 Community Edition, la replica dei log binari è attivata per impostazione predefinita. In Aurora My SQL versione 3, la replica dei log binari è disattivata per impostazione predefinita.

Suggerimento

Se i requisiti di elevata disponibilità sono soddisfatti dalle funzionalità di replica incorporate di Aurora, è possibile lasciare disattivata la replica del log binario. In questo modo, è possibile evitare il sovraccarico delle prestazioni della replica del log binario. È inoltre possibile evitare il monitoraggio e la risoluzione dei problemi associati necessari per gestire la replica dei log binari.

Aurora supporta la replica dei log binari da una fonte SQL compatibile con My 5.7 ad Aurora My versione 3. SQL Il sistema di origine può essere un cluster Aurora My SQL DB, un'istanza My DB RDS for My SQL DB o un'istanza My locale. SQL

Così come la community MySQL, Aurora My SQL supporta la replica da un'origine che esegue una versione specifica a una destinazione che esegue la stessa versione principale o una versione principale successiva. Ad esempio, la replica da un SQL sistema compatibile con My 5.6 ad Aurora My SQL versione 3 non è supportata. La replica da Aurora SQL My versione 3 a un sistema compatibile con SQL My 5.7 o SQL compatibile con My 5.6 non è supportata. Per i dettagli sull'utilizzo della replica dei log binari, consultare Replica tra Aurora e SQL My o tra Aurora e un altro cluster Aurora DB (replica di log binari).

Aurora My SQL versione 3 include miglioramenti alla replica dei log binari nella community My SQL 8.0, come la replica filtrata. Per informazioni dettagliate sui miglioramenti apportati alla community da My SQL 8.0, consulta How Servers Evaluate Replication Filtering Rules nel My Reference Manual. SQL

Compressione delle transazioni per la replica dei registri binari

Per informazioni sull'utilizzo della compressione dei log binari, vedere Binary Log Transaction Compression nel My SQL Reference Manual.

Le seguenti limitazioni si applicano alla compressione dei log binari in Aurora My SQL versione 3:

  • Le transazioni i cui dati di registro binario sono superiori alla dimensione massima consentita del pacchetto non vengono compresse. Ciò è vero indipendentemente dal fatto che l'impostazione di compressione del registro SQL binario Aurora My sia attivata. Tali transazioni vengono replicate senza essere compresse.

  • Se utilizzi un connettore per Change Data Capture (CDC) che non supporta ancora My SQL 8.0, non puoi utilizzare questa funzionalità. Ti consigliamo di testare accuratamente tutti i connettori di terze parti con la compressione del registro binario. Inoltre, ti consigliamo di farlo prima di attivare la compressione binlog su sistemi che utilizzano la replica binlog per. CDC