Skip to main content

Frequently Asked Questions

When should I choose Cloud SQL over Cloud Spanner?

Cloud SQL is the default choice for standard relational workloads — a typical web app's Postgres or MySQL database with predictable growth. It's cheaper, simpler to reason about, and fully compatible with existing MySQL/Postgres tooling and ORMs. Spanner is a different tier: it costs more and requires schema and query adjustments, but scales horizontally across regions with strong consistency. Reach for Spanner only when a single Cloud SQL instance's vertical scaling ceiling is a real, demonstrated constraint.

What's a common Cloud SQL production pitfall?

Connecting directly over a public IP without the Cloud SQL Auth Proxy or private IP/VPC peering, which leaves the instance exposed to credential-stuffing attempts against the database port. Another frequent issue is undersizing connection limits — Cloud SQL instances cap max connections based on machine tier, and an app without connection pooling (e.g., PgBouncer) can exhaust them under load, causing connection refusals during traffic spikes rather than graceful degradation.