2.9 KiB
Cloud SQL Client Libraries
Google Cloud provides client libraries and connectors to simplify connecting to Cloud SQL from various programming languages.
Getting Started
Ensure you have the latest version of the Google Cloud SDK installed and authenticated. Install Google Cloud SDK
Language Connectors
The Cloud SQL Language Connectors (Python, Java, Go, Node.js) provide a secure way to connect to the Cloud SQL instance without managing IP allowlists or SSL certificates.
Python
-
Installation for a Cloud SQL for PostgreSQL instance:
pip install "cloud-sql-python-connector[pg8000]" -
Usage Example:
from google.cloud.sql.connector import Connector connector = Connector() def getconn(): conn = connector.connect( "project:region:instance", "pg8000", user="my-user", password="my-password", db="my-db" ) return conn
Java
-
Maven Dependencies:
The recommended method is to use the Cloud SQL JDBC Socket Factory. Add the BOM to your
<dependencyManagement>section:<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud.sql</groupId> <artifactId>jdbc-socket-factory-bom</artifactId> <version>1.18.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>Then add dependencies for your database:
-
PostgreSQL:
<dependencies> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <version>42.7.3</version> </dependency> <dependency> <groupId>com.google.cloud.sql</groupId> <artifactId>postgres-socket-factory</artifactId> </dependency> </dependencies> -
MySQL:
<dependencies> <dependency> <groupId>com.mysql</groupId> <artifactId>mysql-connector-j</artifactId> <version>8.0.33</version> </dependency> <dependency> <groupId>com.google.cloud.sql</groupId> <artifactId>mysql-socket-factory-connector-j-8</artifactId> </dependency> </dependencies>
-
Node.js (TypeScript)
-
Installation:
npm install @google-cloud/cloud-sql-connector
Go
-
Installation:
go get cloud.google.com/go/cloudsqlconn
Cloud SQL Admin API
To manage Cloud SQL resources (e.g., list instances) programmatically, use the
sqladmin libraries.