Esplorare Database di Azure per MySQL

Completato

Per decidere se l'organizzazione può trarre vantaggio dalla migrazione a Database di Azure per MySQL, si inizierà con una rapida panoramica dei database DBaaS e delle opzioni appropriate per l'hosting di MySQL in Azure e database di Azure per MySQL.

Che cos'è una soluzione di database distribuito come servizio (DBaaS)?

Con un DBaaS, le organizzazioni possono configurare e accedere ai database nel cloud senza la necessità di gestire macchine virtuali e altre infrastrutture sottostanti. Database di Azure per MySQL, un servizio completamente gestito, esegue questa operazione abilitando lo sviluppo di applicazioni di database in una piattaforma DBaaS, con tutte le configurazioni e la manutenzione gestite da Microsoft Azure.

Nota

Le offerte DBaaS rientrano nella categoria più ampia di offerte PaaS (Platform as a Service).

Che cos'è MySQL?

MySQL è una piattaforma di database open source e affidabile ampiamente usata sia dagli sviluppatori che dalle organizzazioni a livello aziendale per ospitare applicazioni Web e sistemi cruciali. È ottimizzato per carichi di lavoro OLTP su scala Internet ed è una parte fondamentale dello stack LAMP (Linux, Apache, MySQL, PHP), uno degli stack di tecnologie più diffusi per lo sviluppo Web.

Come scegliere un'opzione di hosting appropriata

Con Azure, i carichi di lavoro MySQL possono essere eseguiti in un'infrastruttura di macchine virtuali ospitata come servizio (IaaS) o come piattaforma ospitata come servizio (PaaS), detta anche database relazionale come servizio (DBaaS). Le due opzioni di hosting descritte in questo modulo includono:

  • Server flessibile di Database di Azure per MySQL: Database di Azure per MySQL: il server flessibile è un DBaaS relazionale completamente gestito ospitato in Azure ed è basato su MySQL Community Edition open source. Offre diverse funzionalità di disponibilità, manutenzione, sicurezza e prestazioni predefinite, che richiedono quasi nessuna amministrazione, ma che consentono anche un controllo e una flessibilità granulari sulle funzioni di gestione del database e sulle impostazioni di configurazione.

Nota

In questo modulo, quando viene visualizzato "Database di Azure per MySQL", si fa riferimento al server flessibile di Database di Azure per MySQL.

  • MySQL in macchine virtuali di Azure: Per coloro che richiedono IaaS, questa opzione offre flessibilità nella gestione di MySQL nelle macchine virtuali gestite di Azure, adatta per scenari che non richiedono vantaggi DBaaS.

Queste opzioni verranno ora esaminate più in dettaglio.

Database di Azure per MySQL: modalità di distribuzione server flessibile

Database di Azure per MySQL è una piattaforma DBaaS relazionale completamente gestita ospitata in Azure. Il servizio fornisce:

  • Opzioni di disponibilità elevata e ripristino di emergenza, tra cui configurazioni con ridondanza della zona, replica tra aree e ripristino geografico universale.

  • Protezione dei dati con backup automatici e su richiesta e l'opzione per la conservazione a lungo termine (fino a 10 anni in anteprima).

    Nota

    Database di Azure per MySQL usa backup automatici e ripristino temporizzato per un massimo di 35 giorni, che è possibile usare in modo indipendente o oltre alla conservazione a lungo termine.

  • Manutenzione automatizzata, per garantire che il servizio sia il più sicuro e aggiornato, dei componenti seguenti:

    • Hardware sottostante
    • Sistema operativo
    • Motore di database

    Il servizio offre anche la flessibilità necessaria per selezionare la finestra di manutenzione pianificata.

  • Prestazioni prevedibili, con funzionalità come il ridimensionamento automatico delle operazioni di I/O al secondo e i log accelerati, che consentono di soddisfare le esigenze del carico di lavoro.

  • Scalabilità elastica e costi ottimizzati, con funzionalità per l'avvio/arresto del server e il livello di calcolo con possibilità di burst.

  • Funzionalità di sicurezza e conformità di livello aziendale per proteggere i dati sensibili inattivi e in transito.

  • Funzionalità di sicurezza avanzate, tra cui crittografia dei dati con chiavi gestite dal cliente, connettività privata con collegamento privato di Azure e protezione semplificata dalle minacce con Microsoft Defender per il cloud.

  • Strumenti di monitoraggio e automazione che semplificano la gestione delle distribuzioni su larga scala.

Queste funzionalità standard richiedono un impegno amministrativo minimo per implementare e configurare.

Database di Azure per MySQL supporta strumenti comuni come MySQL Workbench e integra con Azure Data Studio tramite l'estensione MySQL, mantenendo un flusso di lavoro familiare per gli sviluppatori. Il servizio offre la flessibilità necessaria per sviluppare applicazioni usando gli strumenti, i linguaggi e i framework preferiti, distribuirlo più velocemente grazie all'integrazione con servizi di Azure come Servizi app o servizio Azure Kubernetes e automatizzare le attività CI/CD usando GitHub o Azure DevOps.

Prendere in considerazione questa modalità di distribuzione per supportare le app native del cloud e le soluzioni che:

  • Sono progettate per gestire l'applicazione automatica delle patch con flessibilità e controllo sufficienti della pianificazione della manutenzione.

  • Supportano la disponibilità elevata:

    • In una singola zona di disponibilità
    • In più zone di disponibilità
  • Possono trarre vantaggio dai controlli di ottimizzazione dei costi grazie alla possibilità di:

    • Avviare e arrestare il server.
    • Implementare il calcolo con possibilità di burst.

    Suggerimento

    Questi controlli flessibili di ottimizzazione dei costi sono utili per i carichi di lavoro che non necessitano sempre di capacità di elaborazione completa.

  • Richiedere al database di ridimensionare le risorse di calcolo e archiviazione in modo dinamico.

  • Sono necessarie prestazioni predefinite, oltre alla possibilità di controllare e personalizzare le impostazioni di configurazione di MySQL.

  • Può trarre vantaggio da un'esperienza di sviluppo semplificata e una stretta interoperabilità con l'ecosistema di Azure.

MySQL in macchine virtuali di Azure

Questa opzione di hosting è categorizzata come IaaS anziché come servizio di database completamente gestito. Consente di eseguire MySQL all'interno di una macchina virtuale gestita nella piattaforma cloud di Azure.

Suggerimento

È possibile installare tutte le edizioni e le versioni recenti di MySQL nella macchina virtuale ospitata.

Prendere in considerazione questa opzione solo quando è necessario un maggiore livello di controllo fornito dalle distribuzioni IaaS e può rinunciare alla facilità d'uso e ad altri vantaggi inclusi in una piattaforma DBaaS.

In che modo si differenziano le opzioni di hosting?

È possibile distribuire MySQL in Azure in modi diversi. La tabella seguente illustra le caratteristiche principali di ognuno di questi approcci.

Opzione Hosting Riepilogo
Database di Azure per MySQL Una piattaforma DBaaS completamente gestita con un'ampia configurazione e controllo utente.
MySQL in macchine virtuali di Azure Opzione basata su IaaS che offre il controllo completo sull'implementazione del database.

Ecco un riepilogo delle differenze nelle funzionalità:

  • Supporto della versione di MySQL:
    • Database di Azure per MySQL supporta mySQL versioni 5.7 e 8.0, con aggiornamenti automatici delle versioni principali e secondarie.
    • MySQL in macchine virtuali di Azure consente qualsiasi installazione della versione di MySQL, offrendo flessibilità per il supporto legacy.
  • Ridimensionamento delle risorse di calcolo:
    • Entrambe le opzioni offrono risorse scalabili per soddisfare diverse richieste di carico.
  • Connettività di rete:
    • Entrambe le opzioni supportano:
      • Endpoint pubblici con un firewall del server.
      • Accesso privato con supporto per il collegamento privato.
      • Accesso privato con integrazione della rete virtuale.
  • Connettività SSL/TLS:
    • Supportato in entrambi i metodi di hosting per garantire la trasmissione sicura dei dati.
  • Archiviazione e operazioni di I/O al secondo:
    • Database di Azure per MySQL supporta dimensioni di archiviazione comprese tra 5 gigabyte (GiB) e 32 terabyte (TiB). Supporta anche il ridimensionamento automatico delle risorse di archiviazione e il ridimensionamento automatico delle operazioni di I/O al secondo.
    • MySQL in macchine virtuali di Azure supporta da 32 GiB a 32,767 GiB, ma non supporta il ridimensionamento dell'archiviazione online o delle operazioni di I/O al secondo.
  • Aggiornamento e applicazione di patch del sistema operativo e di MySQL:
    • Automatico per Database di Azure per MySQL.
    • Operazione gestita dagli utenti finali per MySQL in macchine virtuali di Azure.
  • Disponibilità elevata:
    • Database di Azure per MySQL supporta la disponibilità elevata predefinita con più zone di disponibilità.
    • MySQL in macchine virtuali di Azure richiede la gestione personalizzata di queste impostazioni.
  • Crittografia dei dati inattivi:
    • Database di Azure per MySQL supporta la crittografia dei dati inattiva con le chiavi gestite dal servizio o dal cliente.
    • L'implementazione della crittografia dei dati inattivi per MySQL nelle macchine virtuali di Azure richiede un intervento manuale.
  • Backup:
    • Database di Azure per MySQL offre backup automatizzati con conservazione configurabile fino a 35 giorni e supporta ora la conservazione a lungo termine fino a 10 anni.
    • I backup nelle macchine virtuali di Azure richiedono la gestione manuale. Database di Azure per MySQL include anche altre funzionalità predefinite, come il monitoraggio e gli avvisi, la possibilità di aumentare le prestazioni fino a 10 repliche in lettura, l'autenticazione con Microsoft Entra ID e il supporto di Microsoft Defender per il cloud che non sono disponibili o richiedono la gestione manuale durante l'esecuzione di MySQL in macchine virtuali di Azure.

Database di Azure per MySQL include anche altre funzionalità predefinite, come il monitoraggio e gli avvisi, la possibilità di aumentare le prestazioni fino a 10 repliche in lettura, l'autenticazione con Microsoft Entra ID e il supporto di Microsoft Defender per il cloud che non sono disponibili o richiedono la gestione manuale durante l'esecuzione di MySQL in macchine virtuali di Azure.

Nell'unità successiva, si esaminerà più in dettaglio Database di Azure per MySQL.