Supporto delle funzionalità MySQL su Amazon RDS - Amazon Relational Database Service

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à.

Supporto delle funzionalità MySQL su Amazon RDS

RDS per MySQL supporta la maggior parte delle caratteristiche e delle funzionalità di MySQL. Alcune funzionalità potrebbero avere un supporto o privilegi limitati.

Please change to "Puoi filtrare le nuove funzionalità Amazon RDS alla pagina Quali sono le novità del database?. Per Prodotti, scegli Amazon RDS. Quindi esegui la ricerca utilizzando parole chiave come MySQL 2022.

Nota

I seguenti elenchi non sono esaustivi.

Motori di storage supportati per RDS for MySQL

MySQL supporta più motori di storage con funzionalità diverse, ma non tutti sono ottimizzati per il recovery e la durabilità dei dati. Amazon RDS supporta completamente il motore di archiviazione InnoDB per le istanze database MySQL. Le funzionalità Ripristino point-in-time e Ripristino di snapshot di Amazon RDS richiedono un motore di storage che supporti il recupero da arresto anomalo e sono disponibili solo per il motore di storage InnoDB. Per ulteriori informazioni, consulta Supporto per memcached MySQL.

Il motore di storage Federated non è attualmente supportato da Amazon RDS for MySQL.

Per gli schemi creati dall'utente, il motore di storage MyISAM non supporta il ripristino in modo affidabile e può causare la perdita o il danneggiamento dei dati quando si riavvia MySQL dopo un ripristino, impedendo il corretto funzionamento del ripristino point-in-time o del ripristino da uno snapshot. Tuttavia, se scegli comunque di utilizzare MyISAM con Amazon RDS gli snapshot possono essere utili in alcune situazioni.

Nota

Le tabelle del sistema nello schema mysql possono trovarsi nello storage MyISAM.

Per convertire le tabelle MyISAM esistenti in tabelle InnoDB, è possibile utilizzare il comando ALTER TABLE, ad esempio alter table TABLE_NAME engine=innodb;. Tieni presente che MyISAM e InnoDB hanno diversi punti di forza e di debolezza, quindi è necessario valutare a fondo le conseguenze di questa modifica sulle applicazioni, prima di eseguirla.

MySQL 5.1, 5.5 e 5.6 non sono più supportati in Amazon RDS. Puoi tuttavia ripristinare gli snapshot di MySQL 5.1, 5.5 e 5.6 esistenti. Quando ripristini uno snapshot di MySQL 5.1, 5.5 o 5.6, l'istanza database viene aggiornata automaticamente a MySQL 5.7.

Uso di memcached e altre opzioni con MySQL su Amazon RDS

La maggior parte dei motori di database Amazon RDS supporta gruppi di opzioni che permettono di selezionare caratteristiche aggiuntive per l'istanza database. Le istanze di database RDS per MySQL supportano l'opzione memcached, una cache semplice basata su chiave. Per ulteriori informazioni su memcached e altre opzioni, consulta Opzioni per le istanze database MySQL. Per ulteriori informazioni sull'utilizzo di gruppi di opzioni, consulta Uso di gruppi di opzioni.

Precaricamento della cache InnoDB per MySQL su Amazon RDS

Il precaricamento della cache InnoDB può offrire vantaggi in termini di prestazioni per l'istanza database MySQL salvando lo stato corrente del pool di buffer quando l'istanza database viene arrestata e quindi ricaricando il pool di buffer con le informazioni salvate quando l'istanza database si avvia. Ciò evita la necessità di preparare il pool di buffer dal normale utilizzo del database e permette invece di precaricare il pool di buffer con le pagine per le query comuni note. Il file che archivia le informazioni del pool di buffer salvato archivia solo i metadati per le pagine che si trovano nel pool di buffer e non le pagine stesse. Di conseguenza, il file non richiede molto spazio di storage. La dimensione del file equivale circa allo 0,2% della dimensione della cache. Ad esempio, per una cache da 64 GiB, il file di precaricamento della cache è di 128 MiB. Per ulteriori informazioni sul precaricamento della cache InnoDB, consulta la pagina relativa al salvataggio e ripristino dello stato del pool di buffer nella documentazione di MySQL.

Le istanze database RDS per MySQL supportano il precaricamento della cache InnoDB. Per abilitare il precaricamento della cache InnoDB, imposta i parametri innodb_buffer_pool_dump_at_shutdown e innodb_buffer_pool_load_at_startup su 1 nel gruppo di parametri per l'istanza database. La modifica dei valori di questi parametri in un gruppo di parametri ha effetto in tutte le istanze database MySQL che utilizzano tale gruppo di parametri. Per abilitare il precaricamento della cache InnoDB per istanze database MySQL specifiche, devi creare un nuovo gruppo di parametri per tali istanze. Per informazioni sui gruppi di parametri, consulta Utilizzo di gruppi di parametri.

Il precaricamento della cache InnoDB fornisce principalmente un vantaggio in termini di prestazioni per le istanze database che utilizzano lo storage standard. Se utilizzi lo storage PIOPS non riscontrerai generalmente un vantaggio significativo in termini di prestazioni.

Importante

Se l'istanza database MySQL non si arresta normalmente, ad esempio durante un failover, lo stato del pool di buffer non viene salvato nel disco. In questo caso, al riavvio dell'istanza database, MySQL carica il file del pool di buffer disponibile. Ciò non comporta alcun problema, ma il pool di buffer ripristinato potrebbe non riflettere lo stato più recente del pool di buffer prima del riavvio. Per fare in modo che sia disponibile uno stato recente del pool di buffer per precaricare la cache InnoDB all'avvio, è consigliabile eseguire periodicamente un dump del pool di buffer "on demand".

Puoi creare un evento per eseguire il dump del pool di buffer automaticamente e a intervalli regolari. L'istruzione seguente crea ad esempio un evento denominato periodic_buffer_pool_dump che esegue il dump del pool di buffer ogni ora.

CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();

Per ulteriori informazioni sugli eventi MySQL, consulta la sintassi degli eventi nella documentazione di MySQL.

Dump e caricamento del pool di buffer on demand

Puoi salvare e caricare la cache InnoDB "on demand".

Caratteristiche di MySQL non supportate da Amazon RDS

Al momento, Amazon RDS non supporta le caratteristiche seguenti di MySQL:

  • Plug-in di autenticazione

  • Registrazione degli errori nel log di sistema

  • Crittografia di spazi tabelle InnoDB

  • Plug-in per la complessità della password

  • Variabili di sistema persistenti

  • Plugin di riscrittura Rewriter Query

  • Replica semi-sincrona

  • Spazio di tabella trasportabile

  • Plug-in IDE

Nota

Gli ID transazione globale sono supportati per tutte le versioni di RDS per MySQL 5.7 e per RDS per MySQL 8.0.26 e versioni successive alla 8.0.

Per offrire un'esperienza di servizio gestito, Amazon RDS non fornisce accesso shell alle istanze database. Limita anche l'accesso ad alcune procedure di sistema e tabelle che richiedono privilegi avanzati. Amazon RDS supporta l'accesso ai database in un'istanza database con qualsiasi applicazione client SQL standard. Amazon RDS non consente l'accesso host diretto a un'istanza database tramite Telnet, Secure Shell (SSH) o Windows Remote Desktop Connection. Quando crei un'istanza DB, vieni assegnato come db_owner per tutti i database su quell'istanza e disponi di tutte le autorizzazioni a livello di database ad eccezione di quelle utilizzate per i backup. Amazon RDS gestisce i backup per tuo conto.