Domande frequenti su Cloud SQL per PostgreSQL

Informazioni

Che cos'è Cloud SQL?
Cloud SQL è un servizio che fornisce database SQL completamente gestiti nel cloud. Cloud SQL fornisce database PostgreSQL, SQL Server e MySQL.
Quali sono i vantaggi dell'utilizzo di Cloud SQL?
Cloud SQL consente di lasciare a Google attività banali, ma necessarie e spesso dispendiose in termini di tempo, come l'applicazione di patch e aggiornamenti, la gestione dei backup e la configurazione delle repliche. In questo modo potrai concentrarti sulla realizzazione di applicazioni eccezionali. Inoltre, poiché utilizziamo protocolli di cablaggio standard, puoi connetterti da quasi qualsiasi applicazione, ovunque ti trovi.
Quali versioni del database sono disponibili con Cloud SQL? Come vengono gestiti gli aggiornamenti?

Cloud SQL per PostgreSQL supporta PostgreSQL 9.6, 10, 11, 12, 13, 14, 15, 16 (predefinito) e 17.

Gli aggiornamenti delle versioni minori vengono implementati nell'ambito della manutenzione pianificata, senza alcun intervento da parte tua. Per ulteriori informazioni sugli aggiornamenti, consulta Panoramica della manutenzione delle istanze Cloud SQL.

Per visualizzare la versione corrente dell'istanza, vai alla console Google Cloud, fai clic sul nome dell'istanza per aprire la pagina Dettagli istanza. In alternativa, puoi utilizzare il comando gcloud sql instances describe.

Cloud SQL supporta tutte le funzionalità del database?
Cloud SQL supporta la maggior parte delle funzionalità comuni di PostgreSQL. Per un elenco di tutte le differenze tra PostgreSQL standard e le funzionalità fornite da Cloud SQL, consulta Differenze tra Cloud SQL e le funzionalità di PostgreSQL standard.
Esistono limiti di dimensioni o QPS?
Non sono previsti limiti di query al secondo (QPS) per le istanze Cloud SQL. Per informazioni su quote e limiti relativi a connessioni, dimensioni e App Engine, consulta Quote e limiti.
Come faccio a ricevere una notifica in caso di modifiche a Cloud SQL?
Puoi registrarti al forum google-cloud-sql-announce dove pubblichiamo annunci e notizie su Cloud SQL.
Come faccio a segnalare un bug, richiedere una funzionalità o porre una domanda?
Puoi segnalare bug e richiedere una funzionalità nel nostro gruppo google-cloud-sql-discuss. Puoi porre una domanda su Stack Overflow. Per altre opzioni di assistenza, consulta la pagina Assistenza Cloud SQL.
Torna all'inizio

Per iniziare

Perché la mia nuova istanza senza dati mostra lo spazio su disco utilizzato?
Cloud SQL e il database utilizzano entrambi un po' di spazio per i file di sistema e i metadati quando viene creata l'istanza.
Torna all'inizio

Archiviazione, replica e autenticazione dei dati

Dove vengono archiviati i miei dati?

I dati dell'istanza vengono archiviati nella regione in cui si trova l'istanza. Se non specifichi una posizione di archiviazione, i backup vengono archiviati nella regione a più regioni più geograficamente vicina alla posizione dell'istanza Cloud SQL. Ad esempio, se l'istanza Cloud SQL si trova in us-central1, i backup vengono archiviati per impostazione predefinita nella regione con più aree geografiche us. Tuttavia, una località predefinita come australia-southeast1 si trova al di fuori di più regioni. La regione multipla più vicina è asia.

Che cos'è una zona?

Una zona è un'entità indipendente in una località geografica specifica in cui puoi eseguire le tue risorse. Ad esempio, una zona denominata us-central1-a indica una località negli Stati Uniti centrali.

Per saperne di più sulle zone, consulta Risorse zonali nella documentazione di Compute Engine.

Quali sono i limiti di spazio di archiviazione?
Per informazioni sui limiti di spazio di archiviazione, consulta Quote e limiti.
Come vengono replicati i miei dati?

Le istanze PostgreSQL forniscono una configurazione di alta disponibilità e repliche di lettura.

Quali tipi di repliche di lettura posso creare?

Per ulteriori informazioni sulle repliche di lettura, inclusi i casi d'uso per ogni tipo, consulta Opzioni di replica.

Come funziona il failover di Cloud SQL?

Per informazioni sul failover, consulta Panoramica della configurazione dell'alta disponibilità.

I miei dati sono criptati?
I dati dei clienti di Cloud SQL vengono criptati quando sono archiviati in tabelle, file temporanei e backup del database. Le connessioni esterne possono essere criptate utilizzando SSL o il proxy di autenticazione Cloud SQL.
Come viene gestita la crittografia per i dati at-rest?

I tuoi dati vengono criptati utilizzando l'Advanced Encryption Standard (AES-256) a 256 bit o, meglio, con chiavi simmetriche: ovvero, la stessa chiave viene utilizzata per criptare i dati quando vengono memorizzati e per decriptarli quando vengono utilizzati. Queste chiavi di dati sono a loro volta criptate utilizzando una chiave archiviata in un keystore sicuro e modificata regolarmente.

Per maggiori dettagli, consulta Crittografia dei dati inattivi in Google Cloud.

Come viene gestita la crittografia per i dati in transito?

Google crittografa e autentica tutti i dati in transito su uno o più livelli di rete quando i dati si spostano al di fuori dei confini fisici non controllati da Google o per conto di Google. I dati in transito all'interno di un confine fisico controllato da Google o per conto di Google sono generalmente autenticati, ma potrebbero non essere criptati per impostazione predefinita. Se ti connetti a un'istanza utilizzando il relativo indirizzo IP pubblico, utilizza i certificati SSL/TLS per proteggere i dati durante la trasmissione. Puoi scegliere quali misure di sicurezza aggiuntive applicare in base al modello di minaccia. Ad esempio, puoi configurare SSL per le connessioni intrazona a Cloud SQL.

Per maggiori dettagli, consulta Crittografia dei dati in transito in Google Cloud.

Torna all'inizio

Migrazione dei dati

Come viene eseguita la migrazione di dati e vincoli in Cloud SQL?
Durante il processo di migrazione, viene eseguita prima la migrazione dei dati e in un secondo momento vengono ricreati nell'istanza i vincoli (ad esempio chiavi primarie, chiavi estranee e indici).
Come faccio a eseguire la migrazione dei miei dati più velocemente?
Ora puoi eseguire la migrazione dei dati nelle tabelle del tuo database in parallelo. Si verifica un miglioramento delle prestazioni perché Cloud SQL può trasferire i dati con processi paralleli all'interno di un database. Puoi impostare la velocità con cui Cloud SQL trasferisce questi dati su min, optimal o max. Per ulteriori informazioni, consulta Utilizzare un'importazione gestita per configurare la replica da database esterni.
Torna all'inizio

Backup e ripristino

Come faccio a recuperare un'istanza?

Per eseguire il ripristino da un backup, puoi utilizzare la console Google Cloud o lo strumento a riga di comando gcloud. Per maggiori dettagli, consulta Ripristinare un'istanza.

Per ripristinare un'istanza in un punto temporale specifico, utilizza un recupero point-in-time. Per ulteriori informazioni, consulta Utilizzare il recupero point-in-time.

Quanto costano i backup?

I backup vengono addebitati in base alla tariffa di archiviazione dell'istanza.

Per ulteriori informazioni sui prezzi e sulle tariffe dell'archiviazione delle istanze, consulta Prezzi.

Posso accedere ai backup automatici più vecchi di sette giorni?

I backup automatici vengono eseguiti ogni giorno e per impostazione predefinita vengono conservati per sette giorni. Puoi configurare il valore di conservazione dei backup da 1 a 365 backup. Al termine del periodo di conservazione, il backup più antico viene eliminato. I backup automatici sono incrementali. Contengono solo i dati che sono stati modificati dopo l'esecuzione del backup precedente. Il backup più vecchio ha dimensioni simili a quelle del database. Quando viene eliminato il backup più antico, le dimensioni del backup precedente aumentano in modo che esista ancora un backup completo.

Tieni presente che i backup on demand non vengono eliminati finché non li rimuovi manualmente.

Quando devo utilizzare la replica esterna rispetto a quella tra regioni per la protezione da errori regionali?
Replicazione esterna Replica tra regioni
Gestita autonomamente dal cliente Replica cross region gestita di Cloud SQL
Può eseguire la replica tra istanze non Google Cloud e Google Cloud Può essere replicato solo tra istanze Cloud SQL
Per eseguire la migrazione a/da Google Cloud al fine di ridurre al minimo i tempi di riposo o per la protezione dei dati ibrida/multi cloud Per eseguire la migrazione dei dati tra regioni Google Cloud in modo da ridurre al minimo i tempi di inattività
Supporta la replica tra le versioni principali Non supporta la replica tra versioni principali
Torna all'inizio

Gestione delle istanze

Quali azioni potrebbero causare il riavvio delle istanze Cloud SQL?
Le istanze Cloud SQL potrebbero essere riavviate quando tu o Cloud SQL eseguite le seguenti azioni:
  • Aggiorna
  • Crea
  • Promuovi replica
  • Manutenzione
  • Ricrea replica
  • Failover
  • Riavvia
  • Ripristina istanza da backup
  • Attivare l'alta disponibilità su un'istanza esistente (si tratta di un aggiornamento dell'istanza)
  • Aggiungere un flag di database che richiede un riavvio

Il riavvio di un'istanza non modifica gli indirizzi IP pubblici o privati dell'istanza.

Consulta la sezione seguente: Per quanto tempo le istanze vengono arrestate durante il riavvio?

Per quanto tempo le istanze vengono arrestate durante il riavvio?

Quando le istanze vengono riavviate, la maggior parte viene arrestata per uno o due minuti. Prima dell'arresto dell'istanza, tutte le connessioni vengono interrotte e il lavoro corrente viene svuotato dal disco.

Per le istanze con un carico elevato, questo processo richiede più tempo e potrebbe sembrare che l'istanza sia bloccata. In questi casi, l'arresto e il riavvio dell'istanza possono richiedere fino a un'ora. I motivi per cui l'arresto e il riavvio delle istanze richiedono molto tempo possono includere: quando l'utente ha molte transazioni di scrittura o quando le transazioni vengono eseguite per molto tempo.

Posso aumentare o ridurre le dimensioni del mio database?

Puoi aumentare la quantità di spazio di archiviazione disponibile per la tua istanza in qualsiasi momento senza costi aggiuntivi. Non puoi ridurre le dimensioni dello spazio di archiviazione dell'istanza. Puoi anche configurare la tua istanza in modo da aumentare automaticamente la capacità di archiviazione quando lo spazio è in esaurimento. Scopri di più.

Posso eseguire l'upgrade e il downgrade delle vCPU?

Sì. Puoi modificare il numero di vCPU utilizzate nell'istanza. Puoi aumentare o diminuire il numero di core che utilizzi tutte le volte che vuoi. In genere sono necessari meno di cinque minuti di tempo di riposo per modificare il numero di vCPU. Se aumenti il numero di vCPU nell'istanza principale della versione Cloud SQL Enterprise Plus, la modifica viene applicata con un tempo di riposo quasi nullo.

Devo utilizzare la console Google Cloud per gestire Cloud SQL?
No. Tutte le attività di gestione che possono essere eseguite utilizzando la console possono essere eseguite anche in modo programmatico utilizzando l'API amministrazione Cloud SQL o tramite script utilizzando lo strumento a riga di comando gcloud.
Come faccio a recuperare lo spazio utilizzato dai file temporanei?
I file temporanei possono aumentare di dimensioni quando le query SQL creano molte tabelle temporanee. Per recuperare lo spazio utilizzato dalle tabelle temporanee, devi riavviare il database. Tieni presente che il riavvio del database non riduce lo spazio su disco di cui è stato eseguito il provisioning a seguito della crescita dei file temporanei.
Posso importare o esportare un database specifico?
Sì. Puoi importare o esportare solo un database specifico; non puoi importare o esportare più di un database alla volta. Per saperne di più, consulta Importazione dei dati o Esportazione dei dati.
Posso importare o esportare un file CSV?
Puoi importare o esportare un file CSV per MySQL o PostgreSQL. Per saperne di più, consulta la sezione Creare un file CSV.

Al momento, CSV non è supportato in Cloud SQL per SQL Server.

Mi serve un account Cloud Storage per importare o esportare dati in un'istanza?
Cloud SQL supporta l'importazione e l'esportazione di database utilizzando file CSV o pg_dump. Per ulteriori informazioni, consulta Esportazione e importazione mediante pg_dump e pg_restore o Esportazione e importazione mediante file CSV.
Se elimino la mia istanza, posso riutilizzare il nome dell'istanza?
Sì.
Qual è il livello di isolamento delle transazioni fornito da Cloud SQL?

Istanze PostgreSQL: Cloud SQL fornisce isolamento delle transazioni Read committed. Puoi modificare il livello di isolamento delle transazioni per una transazione specifica, ma solitamente è preferibile il valore predefinito. Per ulteriori informazioni, consulta la sezione Isolamento delle transazioni della documentazione di PostgreSQL.

Come faccio a proteggere la mia istanza dall'eliminazione accidentale?
Puoi attivare la protezione da eliminazione quando crei un'istanza o in un secondo momento. Se questa impostazione è attivata, devi disattivarla prima di eliminare l'istanza. Consulta Impedire l'eliminazione di un'istanza.
Torna all'inizio

Approfondimenti

Perché non riesco a trovare il piano di query di esempio in Approfondimenti?
Abbiamo solo query di esempio per ottenere il piano di query, a causa dell'impatto sulle prestazioni che può avere sulla query. Di conseguenza, a volte i piani di query di esempio non vengono visualizzati.
Torna all'inizio

Prezzi e fatturazione

Come faccio a provare Cloud SQL?
L'istanza più piccola è db-f1-micro. Puoi utilizzarlo per provare il servizio. Tieni presente che le istanze principali condivise non sono coperte dallo SLA.
Quante istanze posso creare in un progetto?
Per informazioni sul limite di istanze, consulta Quote e limiti.
Di che dimensione deve essere l'istanza di database? Quanta RAM?
In generale, puoi aumentare le prestazioni del tuo database scegliendo un'istanza più grande con più RAM e CPU. In questo modo, vengono migliorate le prestazioni di molte query che richiedono grandi quantità di calcoli, ad esempio quelle che coinvolgono join, ORDER BY o GRUPPO, anche se le prestazioni degli aggiornamenti che interessano singole righe non saranno molto influenzate. Tuttavia, maggiori sono le dimensioni dell'istanza, maggiore è la latenza operativa. Per ulteriori informazioni sulle dimensioni e sui prezzi delle istanze, consulta la pagina dei prezzi.
Come viene calcolato l'utilizzo della mia istanza?

Ti viene addebitato un importo per minuto per il tempo di attività dell'istanza.

Come viene calcolato lo spazio di archiviazione?
Lo spazio di archiviazione viene calcolato in base alla quantità di spazio di archiviazione di cui è stato eseguito il provisioning per l'istanza. Lo spazio di archiviazione per i backup viene addebitato in base allo spazio utilizzato dai backup. Lo spazio di archiviazione viene addebitato indipendentemente dal fatto che l'istanza sia attivata o meno.
Come faccio a sapere quanto mi verrà addebitato?
La scheda Fatturazione della console Google Cloud mostra gli addebiti sostenuti dalle tue istanze dall'emissione dell'ultima fattura.
Cosa succede quando la mia istanza raggiunge la dimensione consentita?
Se l'istanza raggiunge le dimensioni dello spazio di archiviazione di cui è stato eseguito il provisioning e non hai attivato l'aumento automatico dello spazio di archiviazione o se ha raggiunto il limite configurato, le scritture future nel database non sono consentite finché non aumenti le dimensioni dello spazio di archiviazione. L'aumento della dimensione dello spazio di archiviazione non richiede il riavvio dell'istanza o tempi di inattività.
Perché la mia istanza è stata sospesa?
Probabilmente si tratta di un problema con il tuo account Google Cloud. Per determinare il tuo stato di fatturazione, invia una richiesta di assistenza per la fatturazione. Una volta risolto il problema di fatturazione, lo stato dell'istanza torna a essere eseguibile entro poche ore. Tieni presente che le istanze MySQL sospese vengono eliminate dopo 90 giorni.
Perché la mia istanza è stata eliminata?
Le istanze sospese per 90 giorni vengono eliminate. Questo vale per le istanze con stato SUSPENDED. Le istanze arrestate, con stato RUNNABLE, non vengono eliminate.
Come faccio ad annullare il mio account Cloud SQL?
Per disattivare Cloud SQL per un progetto, vai alla console Google Cloud, seleziona il progetto e poi il servizio API per aprire la dashboard delle API. Individua l'API Cloud SQL e fai clic su Disattiva per l'API.
Come faccio a disattivare la fatturazione?
Puoi disattivare la fatturazione facendo clic su Disattiva fatturazione nel riquadro Fatturazione e impostazioni della console Google Cloud per un progetto. Se disattivi la fatturazione, viene disattivato anche il servizio Cloud SQL. Assicurati di voler disattivare il servizio Cloud SQL prima di disattivare la fatturazione.

Dopo aver disattivato la fatturazione, riceverai un'ultima fattura per gli addebiti effettuati tra l'inizio del ciclo di fatturazione e l'annullamento.

Torna all'inizio

Utilizzo di Cloud SQL con App Engine

Posso connettermi da App Engine a un'istanza PostgreSQL?
Puoi connetterti da un'applicazione App Engine a un'istanza PostgreSQL, a seconda dell'ambiente e del linguaggio in uso. Per ulteriori informazioni, consulta Connessione dall'ambiente standard di App Engine o Connessione dall'ambiente flessibile di App Engine.
La mia applicazione App Engine negli Stati Uniti può accedere alla mia istanza Cloud SQL nell'UE (e viceversa)?

Se ti connetti a un'istanza Cloud SQL, l'applicazione App Engine non deve necessariamente trovarsi nella stessa regione. Tuttavia, una distanza maggiore tra l'istanza Cloud SQL e l'applicazione App Engine causa una maggiore latenza per le connessioni al database.

Quale servizio di database Google Cloud è adatto a me?
Dipende dai requisiti della tua applicazione. Google Cloud offre una serie di opzioni per archiviare, gestire e recuperare i dati. Per ulteriori informazioni, consulta Database Google Cloud.
Devo installare un server di database locale per utilizzare il server di sviluppo App Engine?
No. Puoi configurare App Engine in modo da utilizzare Cloud SQL o un server database installato localmente durante l'esecuzione sul server di sviluppo.
Quali lingue posso utilizzare per accedere alla mia istanza?
L'ambiente standard App Engine supporta diversi linguaggi che puoi utilizzare per connetterti alle tue istanza. Per ulteriori informazioni, consulta Connessione dall'ambiente standard di App Engine o Connessione dall'ambiente flessibile di App Engine.

Se non utilizzi App Engine, puoi utilizzare qualsiasi linguaggio associato a un connettore o a un'API.

Posso utilizzare Django con Cloud SQL?
Sì. Cloud SQL è compatibile con Django. Consulta la Guida introduttiva a Django.
Quali segnaposto posso utilizzare nella stringa di query Python?
Gli utenti di Python possono utilizzare il codice di formato %s solo nella sostituzione dei parametri. Pertanto, la seguente affermazione non è valida: cursor.execute('INSERT INTO entries (guestAge) VALUES (%d)', (age)).
Come faccio a gestire le connessioni?

La gestione efficace delle connessioni al database è un aspetto importante dello sviluppo di applicazioni database, incluso l'utilizzo del pooling delle connessioni e del backoff esponenziale. Per esempi su come impiegare queste tecniche in una serie di linguaggi e framework, consulta Gestire le connessioni al database.

Per scoprire di più sui limiti di connessione delle istanze, consulta Quote e limiti.

Che cosa significa un'eccezione SQL con il messaggio "ID connessione non valido"?
Significa che la connessione non è più aperta sul server e viene ignorata dal client.  Non è necessario chiamare "close" per queste connessioni, perché sono già chiuse.
Posso accedere alla mia istanza Cloud SQL in modo programmatico all'esterno di App Engine?
Sì. Puoi accedere alle istanze Cloud SQL in modo programmatico da applicazioni esterne utilizzando qualsiasi linguaggio supportato. Consulta la Panoramica della connessione.
Torna all'inizio