Cloud SQL (PostgreSQL) is a fully-managed database service that helps you set up, maintain, manage, and administer your relational databases on Google Cloud. For more information, see the following:
This document describes the connections and parameters you can configure when using App Design Center to create a Cloud SQL (PostgreSQL) instance. The configuration parameters are based on the terraform-google-sql-db Terraform module.
Component connections
The following table includes the components that you can connect to a Cloud SQL (PostgreSQL) instance, and the resulting updates to your application and its generated Terraform code.
Connected component
Application updates
Background information
- The Compute Engine instances can connect and read and write data to the Cloud SQL (PostgreSQL) instance.
- The Cloud SQL connection metadata is added to the Compute Engine instance template.
- The
roles/cloudsql.instanceUser
androles/cloudsql.client
roles are added to the Compute Engine instance template service account. - The Compute Engine service account is added as an IAM user to the Cloud SQL instance.
- The Secret Manager Secret Datafield contains the password for the default user.
- The service account can connect to the Cloud SQL (PostgreSQL) instance.
- The
roles/cloudsql.instanceUser
androles/cloudsql.client
roles are added to the service account. - The service account IAM information is added to the Cloud SQL instance.
- The Cloud Run service can read and write data to the Cloud SQL (PostgreSQL) instance.
- The Cloud SQL connection metadata is added to the Cloud Run service.
- The
roles/cloudsql.instanceUser
androles/cloudsql.client
roles are added to the Cloud Run service account. - The Cloud Run service account is added as an IAM user to the Cloud SQL instance.
Required configuration parameters
If your template includes a Cloud SQL (PostgreSQL) component, you must configure the following parameters before you deploy.
Parameter name |
Description and constraint information |
Background information |
---|---|---|
Project ID |
The project where you want to deploy the Cloud SQL resource. |
Configure components |
Name |
name | Create a PostgreSQL instance |
Database Version |
databaseVersion | Create a PostgreSQL instance |
Region |
region | Manage instance locations |
Optional configuration parameters
The following parameters are optional. To display advance parameters, in the Configurationarea, select Show advanced fields.
Feature
Parameter name
Description and constraint information
Background information
Enable Default Db
If selected, create a default database. In the Db Namefield, enter the name of the default database.
Enable Default User
If selected, create a default user. Enter a User Nameand User Passwordfor the default user.
Database Deletion Policy
To allow the database to be abandoned rather than deleted, enter ABANDON
.
PostgreSQL databases cannot be deleted if users other than cloudsqlsuperuser have access.
Machine
Select a machine series and type for your instance. The options that you select determine available storage type and configuration options. You can't change the machine series after you create your instance.
Enable Private Path for Google Cloud Services
PSC Allowed Consumer Projects
Deletion protection
User Deletion Policy
To allow the user to be abandoned rather than deleted, enter ABANDON
.
PostgreSQL users cannot be deleted if they have been granted SQL roles.
Password
Enter a password, or select Random Passwordto generate a password.
Follow GAE Application
The App Engine application to follow. Must be in the same region as the Cloud SQL instance.
Read Replica Deletion Protection Enabled
To block Terraform from deleting replica SQL Instances, select the checkbox.
Insights Config
Query Plans Per Minute
Read Replica Deletion Protection
If selected, blocks Terraform from deleting replica SQL Instances.
Enable Random Password Special
If selected, enables special characters in generated random passwords.
Enable Google ML Integration
Database Integration Roles
The roles required by the default database instance service account for integration with Google Cloud services.