Informazioni sulla replica in Cloud SQL

La replica è la capacità di creare copie di un'istanza Cloud SQL e di trasferire il lavoro alle copie.

Introduzione

Il motivo principale per l'utilizzo della replica è scalare l'utilizzo dei dati in un database senza ridurre le prestazioni.

Altri motivi per la replica includono la migrazione dei dati tra regioni.

Inoltre, se un'istanza originale è danneggiata, una replica potrebbe essere promossa a istanza autonoma (in questo caso, le repliche esistenti non la considereranno come principale).

Quando si fa riferimento a un'istanza Cloud SQL, l'istanza replicata è denominata istanza principale e le copie sono chiamate repliche di lettura. L'istanza principale e le repliche di lettura risiedono tutte in Cloud SQL.

Quando viene creata la prima replica:

  • L'istanza principale è impostata sul modello di recupero completo per tutti i database attualmente nell'istanza principale.
  • Viene creato un disco temporaneo, dove viene acquisito e archiviato un backup completo. Il disco temporaneo viene eliminato al termine del processo di creazione della replica.

Se, nel periodo di tempo della creazione della prima replica, l'utente passa al modello di recupero semplice, la creazione della replica non riesce.

Quanto segue si applica ai database aggiunti all'istanza principale dopo la creazione delle repliche:

  • I database vengono aggiunti automaticamente ai gruppi di disponibilità e vengono completati nelle repliche utilizzando il seeding automatico.
  • Ogni creazione di replica richiama un backup completo (modello di ripristino completo) dei database nell'istanza principale. Gli accessi e gli oggetti server creati dopo la replica non vengono replicati.

Cloud SQL supporta i seguenti tipi di repliche:

Cloud SQL non supporta la replica tra due server esterni.

Repliche di lettura

Puoi utilizzare una replica di lettura per trasferire il lavoro da un'istanza Cloud SQL. La replica di lettura è una copia esatta dell'istanza principale. I dati e altre modifiche nell'istanza principale vengono aggiornati quasi in tempo reale nella replica di lettura.

Le repliche di lettura sono di sola lettura e non è possibile scriverle. La replica di lettura elabora query, richieste di lettura e analisi del traffico, riducendo così il carico sull'istanza principale. Puoi avere fino a 8 repliche di lettura per istanza principale.

Per connetterti a una replica puoi utilizzare il nome e l'indirizzo IP della connessione. Se ti connetti a una replica utilizzando un indirizzo IP privato, non devi creare una connessione privata VPC aggiuntiva per la replica, poiché la connessione viene ereditata dall'istanza principale.

Per informazioni su come creare una replica di lettura, consulta Creazione di repliche di lettura. Per informazioni sulla gestione di una replica di lettura, consulta Gestione delle repliche di lettura.

Come best practice, inserisci le repliche di lettura in una zona diversa da quella dell'istanza principale quando utilizzi l'alta disponibilità sull'istanza principale. In questo modo, le repliche di lettura continuano a funzionare quando la zona che contiene l'istanza principale viene interrotta. Per saperne di più, consulta la Panoramica dell'alta disponibilità.

Selezionare un tipo di macchina appropriato

Le repliche di lettura possono avere un tipo di macchina diverso da quello della macchina principale. Devi monitorare le metriche sull'istanza, come l'utilizzo di CPU e memoria, per assicurarti che l'istanza di replica sia dimensionata correttamente per il carico di lavoro, soprattutto se è più piccola dell'istanza principale. Un'istanza di replica sottodimensionata è più soggetta a prestazioni scadenti, come eventi frequenti di esaurimento della memoria (OOM).

Repliche di lettura tra regioni

La replica tra regioni consente di creare una replica di lettura in una regione diversa dall'istanza principale. Puoi creare una replica di lettura tra regioni nello stesso modo in cui crei una replica all'interno delle regioni.

Nel caso delle repliche di lettura di SQL Server, si presume che la replica si trovi nella stessa rete virtuale della replica principale o che comunichino tramite IP pubblico.

Repliche tra regioni:

  • Migliora le prestazioni di lettura rendendo disponibili le repliche più vicino alla regione della tua applicazione.
  • Fornisci ulteriori funzionalità di ripristino di emergenza per evitare errori a livello di regione.
  • Consente di eseguire la migrazione dei dati da una regione all'altra.

Consulta la pagina sulla promozione di repliche per la migrazione a livello di regione o il ripristino di emergenza per ulteriori informazioni sulle repliche tra regioni.

Casi d'uso della replica

I seguenti casi d'uso si applicano a ogni tipo di replica.

Nome Principale Replica Vantaggi e casi d'uso Ulteriori informazioni
Replica in lettura Istanza Cloud SQL Istanza Cloud SQL
  • Capacità di lettura aggiuntiva
  • Target Analytics
  • Migliora prestazioni di lettura
  • Esporta dalle repliche
Replica di lettura tra regioni Istanza Cloud SQL Istanza Cloud SQL
  • Capacità di lettura aggiuntiva
  • Target Analytics
  • Funzionalità aggiuntive di ripristino di emergenza
  • Migliora prestazioni di lettura
  • Migrazione dei dati tra regioni
Replica SQL Server Istanza esterna a Cloud SQL Istanza Cloud SQL per SQL Server
  • Percorso di migrazione a Cloud SQL
  • Replica da un server esterno a Cloud SQL
  • Replica da Cloud SQL a un server esterno
  • Replica tra istanze Cloud SQL
  • Replica dei dati sulla Google Cloud Platform
  • Target Analytics

Fatturazione

  • Una replica di lettura viene addebitata alla stessa tariffa di un'istanza Cloud SQL standard. Non è previsto alcun costo per la replica dei dati.
  • I prezzi di una replica di lettura tra regioni sono gli stessi che per la creazione di una nuova istanza Cloud SQL nella regione. Consulta i prezzi delle istanze Cloud SQL e seleziona la regione appropriata. Oltre al normale costo associato all'istanza, una replica tra regioni comporta addebiti per il trasferimento di dati tra regioni per i log di replica inviati dall'istanza principale all'istanza di replica, come descritto in Prezzi del traffico in uscita dalla rete.

Riferimento rapido per le repliche di lettura di Cloud SQL

Argomento Discussione
Backup Non puoi configurare backup nella replica.
Core e memoria Le repliche di lettura possono utilizzare un numero di core e una quantità di memoria diversi da quelli dell'istanza principale.
Eliminazione dell'istanza principale Prima di poter eliminare un'istanza principale, devi promuovere tutte le sue repliche di lettura a istanze autonome o eliminare le repliche di lettura.
Eliminazione della replica in corso... L'eliminazione di una replica non influisce sullo stato dell'istanza principale.
Eliminazione di un database replicato Puoi eliminare un database SQL Server replicato utilizzando la console Google Cloud o il comando gcloud e l'eliminazione si propaga automaticamente alle repliche. Non puoi eliminare un database SQL Server replicato utilizzando i comandi T-SQL.
Failover Un'istanza principale può eseguire il failover a una replica solo se si tratta di una replica di RE. Durante un'interruzione non è possibile eseguire il failover delle repliche di lettura in nessun modo.
Bilanciamento del carico Cloud SQL non fornisce bilanciamento del carico tra le repliche.
Periodi di manutenzione Le repliche di lettura condividono i periodi di manutenzione con l'istanza principale. Le repliche seguono le impostazioni di manutenzione per l'istanza principale, inclusi il periodo di manutenzione, la ripianificazione e il periodo in cui evitare la manutenzione. Durante la manutenzione, Cloud SQL aggiorna tutte le repliche di lettura prima di aggiornare l'istanza principale.
Più repliche di lettura Puoi creare fino a 8 repliche di lettura per una singola istanza principale.
IP privato Se ti connetti a una replica utilizzando un indirizzo IP privato, non devi creare una connessione privata VPC aggiuntiva per la replica, poiché viene ereditata dall'istanza principale.
Ripristino dell'istanza principale Non puoi ripristinare l'istanza principale di una replica mentre la replica esiste. Prima di ripristinare un'istanza da un backup o di eseguire un recupero point-in-time sull'istanza, devi promuovere o eliminare tutte le sue repliche.
Impostazioni Le impostazioni dell'istanza principale vengono propagate alla replica, comprese le modifiche ai dati sugli utenti che possono accedere all'istanza.
Arresto di una replica Non puoi stop una replica. Puoi restart o delete, ma non puoi arrestarlo a causa di un'istanza principale.
Upgrade di una replica in corso Le repliche di lettura possono subire un upgrade fastidioso in qualsiasi momento.
Tabelle utente Non puoi apportare modifiche alla replica. Tutte le modifiche dell'utente devono essere apportate sull'istanza principale.

Limitazioni

  • Questa funzionalità si applica solo alle seguenti versioni di Cloud SQL per SQL Server:

    • SQL Server 2017 Enterprise
    • SQL Server 2019 Enterprise
    • SQL Server 2022 Enterprise
  • Gli accessi non vengono propagati a una replica.

  • Devi monitorare la replica utilizzando T-SQL e/o SQL Server Management Studio.

  • Prima di eliminare un database, devi chiudere le relative connessioni.

  • Quando crei una replica, l'istanza principale non può contenere database in modalità utente singolo. In caso contrario, la creazione della replica non riesce.

Passaggi successivi