Bird
Raised Fist0
GCPcloud~10 mins

Cloud SQL supported engines (MySQL, PostgreSQL, SQL Server) in GCP - Step-by-Step Execution

Choose your learning style10 modes available
Process Flow - Cloud SQL supported engines (MySQL, PostgreSQL, SQL Server)
Start: Choose Cloud SQL
↓
Select Database Engine
↓
MySQL
↓
Configure Instance Settings
↓
Deploy Cloud SQL Instance
↓
Instance Ready to Use
This flow shows how you start with Cloud SQL, pick one of the supported engines (MySQL, PostgreSQL, or SQL Server), configure settings, and deploy the instance.
Execution Sample
GCP
gcloud sql instances create my-instance --database-version=MYSQL_8_0

# or

gcloud sql instances create my-instance --database-version=POSTGRES_14

# or

gcloud sql instances create my-instance --database-version=SQLSERVER_2019_STANDARD
Commands to create Cloud SQL instances with different supported database engines.
Process Table
StepActionInputResultNotes
1Start Cloud SQL instance creationgcloud sql instances createReady to select engineInitial command to create instance
2Select MySQL engine--database-version=MYSQL_8_0Instance configured for MySQL 8.0MySQL engine chosen
3Select PostgreSQL engine--database-version=POSTGRES_14Instance configured for PostgreSQL 14PostgreSQL engine chosen
4Select SQL Server engine--database-version=SQLSERVER_2019_STANDARDInstance configured for SQL Server 2019 StandardSQL Server engine chosen
5Deploy instanceInstance configCloud SQL instance deployedInstance is ready to use
6ExitN/AProcess completeInstance created with chosen engine
💡 Instance deployed with selected database engine, process ends.
Status Tracker
VariableStartAfter Step 2After Step 3After Step 4Final
database_engineNoneMySQL 8.0PostgreSQL 14SQL Server 2019 StandardSelected engine version
Key Moments - 2 Insights
Why do we specify the database engine version during instance creation?
Because Cloud SQL supports specific versions of MySQL, PostgreSQL, and SQL Server, specifying the version ensures the instance runs the correct engine and version as shown in execution_table rows 2-4.
Can we change the database engine after the instance is created?
No, the database engine is fixed at creation time. To use a different engine, you must create a new instance, as indicated by the flow ending after deployment in the concept_flow.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what database engine is selected at Step 3?
AMySQL 8.0
BPostgreSQL 14
CSQL Server 2019 Standard
DNo engine selected
💡 Hint
Check the 'Input' and 'Result' columns in execution_table row 3.
At which step does the Cloud SQL instance become ready to use?
AStep 2
BStep 4
CStep 5
DStep 6
💡 Hint
Look at the 'Result' column for when the instance is deployed in execution_table.
If you want to use SQL Server 2019 Standard, which database_engine value will variable_tracker show after selection?
ASQL Server 2019 Standard
BPostgreSQL 14
CMySQL 8.0
DNone
💡 Hint
Refer to variable_tracker row for database_engine after Step 4.
Concept Snapshot
Cloud SQL supports three main database engines:
- MySQL (e.g., 8.0)
- PostgreSQL (e.g., 14)
- SQL Server (e.g., 2019 Standard)
You select the engine and version when creating an instance.
The engine cannot be changed after creation.
Use gcloud commands with --database-version flag to specify.
Full Transcript
Cloud SQL lets you create managed database instances using MySQL, PostgreSQL, or SQL Server engines. When you start creating an instance, you must choose which engine and version to use. This choice determines how the instance is configured and what features are available. You cannot change the engine after the instance is created. The process involves selecting the engine, configuring instance settings, and deploying the instance. Once deployed, the instance is ready to use with the chosen database engine.

Practice

(1/5)
1. Which database engines are supported by Google Cloud SQL?
easy
A. SQLite, Cassandra, and MariaDB
B. Oracle, MongoDB, and Redis
C. Firebase, Bigtable, and Spanner
D. MySQL, PostgreSQL, and SQL Server

Solution

  1. Step 1: Recall supported engines in Cloud SQL

    Google Cloud SQL supports three main database engines: MySQL, PostgreSQL, and SQL Server.
  2. Step 2: Compare options with supported engines

    Only MySQL, PostgreSQL, and SQL Server lists these three engines correctly; others list unsupported or different services.
  3. Final Answer:

    MySQL, PostgreSQL, and SQL Server -> Option D
  4. Quick Check:

    Cloud SQL engines = MySQL, PostgreSQL, SQL Server [OK]
Hint: Remember Cloud SQL supports only these three engines [OK]
Common Mistakes:
  • Confusing Cloud SQL with other GCP database services
  • Including unsupported engines like Oracle or MongoDB
  • Mixing NoSQL and SQL engines
2. Which of the following is the correct way to specify the database engine when creating a Cloud SQL instance using gcloud CLI?
easy
A. gcloud sql instances create my-instance --database-version=MYSQL_8_0
B. gcloud sql create instance my-instance --engine=PostgreSQL
C. gcloud sql instances new my-instance --db-engine=SQLSERVER_2019
D. gcloud sql instance create my-instance --version=MySQL8

Solution

  1. Step 1: Identify correct gcloud command syntax

    The correct command uses 'gcloud sql instances create' and the flag '--database-version' with uppercase engine and version format.
  2. Step 2: Match options with correct syntax

    gcloud sql instances create my-instance --database-version=MYSQL_8_0 matches the correct syntax: 'gcloud sql instances create my-instance --database-version=MYSQL_8_0'. Others use incorrect flags or commands.
  3. Final Answer:

    gcloud sql instances create my-instance --database-version=MYSQL_8_0 -> Option A
  4. Quick Check:

    Correct gcloud syntax = gcloud sql instances create my-instance --database-version=MYSQL_8_0 [OK]
Hint: Use '--database-version' flag with uppercase engine name [OK]
Common Mistakes:
  • Using wrong command verbs like 'create instance' instead of 'instances create'
  • Using incorrect flags like '--engine' or '--db-engine'
  • Incorrect engine version format or casing
3. Given this snippet to create a Cloud SQL instance with PostgreSQL engine:
gcloud sql instances create pg-instance --database-version=POSTGRES_14 --tier=db-f1-micro --region=us-central1

What will be the engine version of the created instance?
medium
A. SQL Server 2019
B. MySQL 8.0
C. PostgreSQL 14
D. PostgreSQL 9.6

Solution

  1. Step 1: Analyze the '--database-version' flag

    The flag '--database-version=POSTGRES_14' specifies PostgreSQL version 14.
  2. Step 2: Confirm engine and version from command

    The instance will use PostgreSQL engine version 14 as indicated.
  3. Final Answer:

    PostgreSQL 14 -> Option C
  4. Quick Check:

    Database version flag = POSTGRES_14 means PostgreSQL 14 [OK]
Hint: Look at '--database-version' value for engine and version [OK]
Common Mistakes:
  • Assuming default engine if not read carefully
  • Confusing PostgreSQL versions with MySQL or SQL Server
  • Ignoring case sensitivity in version strings
4. You tried to create a Cloud SQL instance with this command:
gcloud sql instances create sqlserver-instance --database-version=SQLSERVER_2017

But it failed. What is the likely reason?
medium
A. Missing required region flag
B. SQL Server 2017 is not supported by Cloud SQL
C. Incorrect command syntax for instance creation
D. SQL Server requires a different CLI tool

Solution

  1. Step 1: Check required flags for Cloud SQL instance creation

    The --region flag (and --tier) is required; both are missing here.
  2. Step 2: Validate other aspects

    SQL Server 2017 is supported via SQLSERVER_2017, command syntax is correct, CLI tool is correct.
  3. Final Answer:

    Missing required region flag -> Option A
  4. Quick Check:

    Missing --region causes failure [OK]
Hint: Always include --region (and --tier) when creating Cloud SQL instances [OK]
Common Mistakes:
  • Assuming SQL Server 2017 is unsupported
  • Thinking region flag is optional
  • Believing a different CLI tool is needed
5. You need a Cloud SQL instance for an app that requires strong Windows authentication support and integration with Microsoft tools. Which engine should you choose and why?
hard
A. MySQL, because it is the most popular and easy to use
B. SQL Server, because it supports Windows authentication and Microsoft integration
C. Any engine, because Cloud SQL handles authentication uniformly
D. PostgreSQL, because it supports advanced JSON features

Solution

  1. Step 1: Identify app requirements

    The app needs strong Windows authentication and Microsoft tool integration.
  2. Step 2: Match engine capabilities

    SQL Server supports Windows authentication and integrates well with Microsoft tools, unlike MySQL or PostgreSQL.
  3. Step 3: Confirm Cloud SQL engine choice

    Choosing SQL Server engine meets the app's specific needs best.
  4. Final Answer:

    SQL Server, because it supports Windows authentication and Microsoft integration -> Option B
  5. Quick Check:

    Windows auth needs SQL Server engine [OK]
Hint: Choose SQL Server for Windows authentication needs [OK]
Common Mistakes:
  • Picking MySQL or PostgreSQL ignoring Windows auth needs
  • Assuming Cloud SQL abstracts all authentication differences
  • Not considering app-specific integration requirements
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard