连接到 Google Cloud SQL 实例
在本主题框架内,我们将使用 Google Cloud Platform 上的 PostgreSQL 实例。 但您可以使用相同的说明连接到 Google Cloud SQL 的 MySQL 和 Microsoft SQL 服务器 实例。
如果您尚未创建实例,请参考 cloud.google.com 上的创建实例。
从 DataGrip,您可以使用以下选项连接到您的实例。
Cloud SQL Proxy 客户端 :一种命令行工具,用于建立代理连接并提供对实例的安全访问。 当 Cloud SQL Proxy 客户端运行时,您无需将您的 IP 添加到授权网络或配置 SSL。 您可以在 cloud.google.com 上的这篇文章中阅读更多关于 Cloud SQL Proxy 的信息。
连接是安全的。 要连接到您的实例,您需要 Google Cloud SDK 和 Cloud SQL Proxy 客户端。
Cloud SQL Connector for Java :用于 JDBC 驱动程序的库,通过它可以安全地连接到 Cloud SQL 数据库。 这些库可在 github.com 上的 cloud-sql-jdbc-socket-factory 仓库的发布页面获取。
连接是安全的。 要连接到您的实例,您需要 Google Cloud SDK 和 Cloud SQL Connector for Java 的 JAR 库文件。
将您的网络添加到授权网络 :将您的网络添加到 Google Cloud Console 中的授权来源列表。 完成此过程后,您可以通过实例的 IP 地址从您的网络连接到 PostgreSQL 实例。
连接不安全(无加密)。 要连接到您的实例,您需要将您的 IP 地址或 IP 地址范围添加到授权网络。
配置 Google Cloud SDK
此配置过程适用于 Cloud SQL Proxy 客户端 和 Cloud SQL Connector for Java。 如果您计划将您的网络添加到授权网络列表,可以跳过此部分。
要完成连接的配置,您需要 Google Cloud SDK。
Google Cloud SDK 包含 gcloud 实用程序,用于管理身份验证和与 Google Cloud Platform API 的交互。 有关 gcloud 的更多信息,请参考 cloud.google.com 上的 gcloud 参考。
步骤 1。 安装 Google Cloud SDK
有关安装过程的更多信息,请参考 cloud.google.com 上的安装 Google Cloud SDK 指南。 此过程提供了指南中的步骤摘要。
下载并解压 Google Cloud SDK 压缩包。
运行
gcloud init命令以初始化 SDK。 在命令提示符中按照安装向导操作。./google-cloud-sdk/bin/gcloud init
步骤 2。 为 Cloud SQL Admin API 注册您的应用程序
在 启用 Cloud SQL Admin API 部分中,点击 启用 API 按钮。
在下拉菜单中选择您的项目,然后点击 继续。
如果您想连接到此项目中的数据库,必须为每个数据库项目启用 Cloud SQL Admin API。 例如,一个项目使用 PostgreSQL,另一个项目使用 MySQL。 您需要为两个项目启用 API。

步骤 3。 配置身份验证
运行以下命令以验证
gcloud工具。gcloud auth login此命令会获取您的凭据并将其存储在 ~/.config/gcloud/ 中。 现在,您可以从终端运行
gcloud命令,它会自动找到您的凭据。
运行以下命令以获取 Application Default Credentials (ADC) 库的凭据。
gcloud auth application-default login此命令会获取 ADC 库的凭据。 现在,运行在您计算机上的任何代码或 SDK 都能够自动找到这些凭据。

使用 Cloud SQL Proxy 客户端配置连接
Cloud SQL Proxy 客户端通过安全隧道与您的数据库通信。 在 cloud.google.com 上的关于 Cloud SQL Proxy 的文章中阅读更多关于客户端的信息。
步骤 1。 运行 Cloud SQL Proxy 客户端
下载 Cloud SQL Proxy 客户端。 在 cloud.google.com 上查看在本地计算机上安装 Cloud SQL Proxy 客户端的说明。
在命令提示符中启动代理。
./cloud-sql-proxy --port 3306 <INSTANCE_CONNECTION_NAME>将
connection_name替换为您的实例的连接名称。 您可以在实例的 概述 页面上找到此信息。 如果3306端口已被占用,请将其更改为另一个端口(例如,5435)。
步骤 2。 创建数据源
确保 Cloud SQL Proxy 客户端正在运行(请参阅 步骤 1)。
通过以下任一方式打开数据源属性:
请导航至 。
在 数据库资源管理器 (⌘ 1 )工具栏上,单击
数据源。
请按 Ctrl+Alt+Shift+S.

在 数据源和驱动程序 对话框中,点击 Add 图标(
),然后选择您的数据库供应商(在我们的示例中为 PostgreSQL)。
请检查连接设置区域底部是否有一个 下载缺失的驱动程序文件 链接。 点击此链接下载与数据库交互所需的驱动程序。 如需直接下载链接,请参阅 JetBrains JDBC drivers页面。

下载的 JDBC 驱动程序的位置是 DataGrip 配置目录。
您还可以使用自己的数据库驱动程序,而不是提供的驱动程序。 有关使用驱动程序连接到数据库的更多信息,请参阅 将用户驱动程序添加到现有连接。
如果没有 下载缺失的驱动程序文件 链接,那么您已经拥有了所需的驱动程序。
从 身份验证 列表中选择 用户&密码。
指定连接详细信息。
主机:
127.0.0.1. 您正在连接到本地计算机,因为您使用的是 Cloud SQL Proxy 客户端。端口:
3306,或您为代理选择的任何其他端口(例如,5435)。User :有权限访问数据库的用户。
密码 :用户的密码。
数据库 :您想要连接的数据库。
确保可以使用提供的详细信息建立数据库连接。 为此,请单击连接详细信息部分底部的 测试连接 链接。

如果您遇到任何连接问题,请参考 无法连接到数据库 页面。
(可选)默认情况下,只有默认的数据库和模式、项目和数据集、数据库、模式、键空间、名称空间是可反省和可使用的。 如果您还想处理其他数据库和架构项目以及数据集数据库、架构和共享数据库数据库架构关键空间命名空间,请在 架构 选项卡中选择它们进行内省。

请点击 确定 以创建数据源。
在 数据库资源管理器 (⌘ 1 )中找到您的新数据源。

使用 Cloud SQL Connector for Java 配置连接
创建数据源
通过以下任一方式打开数据源属性:
请导航至 。
在 数据库资源管理器 (⌘ 1 )工具栏上,单击
数据源。
请按 Ctrl+Alt+Shift+S.

在 数据库资源管理器 (⌘ 1 )中,点击工具栏上的
新建 ,然后选择要为其创建数据源的数据库。

在 连接类型 列表中,选择 URL only。
在 驱动程序 列表中,选择驱动程序:
PostgreSQL: PostgreSQL(CloudSQL Proxy)
MySQL: MySQL(CloudSQL Proxy)
Microsoft SQL 服务器: Microsoft SQL 服务器(CloudSQL Proxy)
请检查连接设置区域底部是否有一个 下载缺失的驱动程序文件 链接。 点击此链接下载与数据库交互所需的驱动程序。

在 URL(U) 字段中,粘贴以下格式的 URL:
PostgreSQL:
jdbc:postgresql:///<DATABASE_NAME>?cloudSqlInstance=<INSTANCE_CONNECTION_NAME>&user=<USER_NAME>&password=<USER_PASSWORD>MySQL:
jdbc:mysql:///<DATABASE_NAME>?cloudSqlInstance=<INSTANCE_CONNECTION_NAME>&user=<USER_NAME>&password=<USER_PASSWORD>Microsoft SQL 服务器:
jdbc:sqlserver://;databaseName=<DATABASE_NAME>;user=<USER_NAME>;password=<USER_PASSWORD>
,其中
DATABASE_NAME :您想要连接的数据库名称。
INSTANCE_CONNECTION_NAME :实例的连接名称。 您可以在实例的 概述 页面上找到此信息。

USER_NAME :有权限访问数据库的用户名。
USER_PASSWORD :用户的密码。
请注意,您无需指定主机。 由于您为驱动程序设置的属性,您的实例的 IP 地址将被自动检测。
您的 URL 可能类似于以下内容:
PostgreSQL:
jdbc:postgresql:///guest?cloudSqlInstance=crucial-study-301709:us-central1:postgres&user=guest&password=guestMySQL:
jdbc:mysql:///guest?cloudSqlInstance=mysql-304410:europe-west3:mysql&user=guest&password=guestMicrosoft SQL 服务器:
jdbc:sqlserver://;databaseName=guest;user=sqlserver;password=guest
或者,在 连接类型 列表中,选择 默认 并在可用字段中输入您的连接详细信息。
单击连接详细信息区域底部的 测试连接 链接以启动到数据库的测试连接。

单击 确定 以保存您的新数据源。

将您的网络添加到授权网络
要完成本部分指南,您需要知道您的外部 IP 地址或 IP 地址范围。 使用 CIDR 表示法 (例如, 192.168.100.14/24)。
步骤 1。 将您的网络添加到授权网络
打开您的 Cloud SQL 实例页面。
选择 连接 选项卡并点击 添加网络。
在 网络 字段中,输入您的外部 IP 地址或 CIDR 表示法的 IP 地址范围。
点击 完成 然后点击 保存。
等待您的实例更新完成。

步骤 2。 创建数据源
通过以下任一方式打开数据源属性:
请导航至 。
在 数据库资源管理器 (⌘ 1 )工具栏上,单击
数据源。
请按 Ctrl+Alt+Shift+S.

在 数据源和驱动程序 对话框中,点击 添加 图标(
),然后选择您的数据库供应商(例如, PostgreSQL)。
请检查连接设置区域底部是否有一个 下载缺失的驱动程序文件 链接。 点击此链接下载与数据库交互所需的驱动程序。 如需直接下载链接,请参阅 JetBrains JDBC drivers页面。

下载的 JDBC 驱动程序的位置是 DataGrip 配置目录。
您还可以使用自己的数据库驱动程序,而不是提供的驱动程序。 有关使用驱动程序连接到数据库的更多信息,请参阅 将用户驱动程序添加到现有连接。
如果没有 下载缺失的驱动程序文件 链接,那么您已经拥有了所需的驱动程序。
在 主机 字段中,输入您的 PostgreSQL 实例的 IP 地址。 您可以在实例的概览页面上找到此 IP 地址。

从 身份验证 列表中选择 用户与密码。
在 用户 字段中,输入有权限访问数据库的用户名。
在 密码 字段中,输入用户的密码。
在 数据库 字段中,输入您想要连接的数据库名称。
确保可以使用提供的详细信息建立数据库连接。 为此,请单击连接详细信息部分底部的 测试连接 链接。

如果您遇到任何连接问题,请参考 无法连接到数据库 页面。
(可选)默认情况下,只有默认的数据库和模式、项目和数据集、数据库、模式、键空间、名称空间是可反省和可使用的。 如果您还想处理其他数据库和架构项目以及数据集数据库、架构和共享数据库数据库架构关键空间命名空间,请在 架构 选项卡中选择它们进行内省。

请点击 确定 以创建数据源。
在 数据库资源管理器 (⌘ 1 )中找到您的新数据源。
