Cloud SQL


  • Fully managed service
  • Supported databases:
    • MySQL
    • PostgreSQL
    • Microsfot SQL Server
  • The Migration Guide describes the process for migration from MySQL to Cloud SQL
  • Data is encrypted in database tables, temp file, backups and Googles network
  • SSL/TLS or Cloud SQL Proxy secure connections
  • Automated patching
  • Integration with Cloud operations suite
  • Multi-language support in App Engine including Java, Python, PHP, Node.js and Ruby
  • Choice of clients including:
    • Cloud Shell
    • 3rd party clients e.g. Toad
  • Scalability (per instance):
    • 30 TB storage
    • 40,000 IOPS
    • 416 GB RAM
  • Scale:
    • Up to 64 cores
    • Out with read replicas
  • Connection options
    • mysql client

Feature summary by database

Backups and high availabilityBackups
Point-in-time recovery (PITR)
High availability
Data migrationData migration to external servers
LogsAudit logging
Instance logging
Maintenance windowsMaintenance windows
Maintenance notifications
ProxyCloud SQL Proxy support
ReplicationRead replicas
Cross-region read replicas
External read replicas
Replication from an external server
SecurityCustomer-managed encryption keys (CMEK)
Connection organization policies
VPC Service Controls


  • Replicas can be used to scale a database but also:
    • Migrating data between regions
    • Migrating data between platforms
    • Migrate from datacenter to cloud
  • Data replication bewteen zones and automated failover
  • Provdes some level of protection if original instance is corrupted
  • Terminology
    • Primary Instance: Source instance to be replicated
    • Read replicas: Copies of the primary instance data – upto 10 per primary instance.
    • Cross-region read replicas: replica tn a region different to the primary instance
    • External read replicas: replicate to an instance outside of Cloud SQL
    • Cloud SQL replications: replicas from an external source e.g. customer datacenter


  • Automated and on-demand backups
  • Point in time recovery
  • Exports to Cloud Storage differ from backups in that they encompass only a subset of data, whereas a backup includes the entire database
  • Automated backups
    • 4 hour backup window
    • Retain 7 backups by default – can be configured from 1- 365
    • Stopped if instance not running for more than 36 hours
  • On-demand backups
    • Run a backup at any time
    • Retained indefinitely until delted by an administrator or the database instance is deleted
  • Backups are incremental
Backup Instance Locations
  • Default backup location = closed multi-region e.g. us for an instance in us-central1
  • Custom backup locations can be configured where necessary