我们想测试使用 Cloud Data Fusion 将 Cloud SQL (mySQL) 连接到 BigQuery。连接到 CloudSQL 的正确方法是什么,因为此时这似乎不是“内置”的。推荐什么驱动程序,是否有任何可用说明?
1 回答
以下是在 Data Fusion 中使用 Cloud SQL MySQL 的说明。请注意,在 Wrangler 部分,目前无法使用具有私有 IP 的 Cloud SQL 实例。但是,它们仍然可以在运行数据融合管道时使用
在 Wrangler 中使用 Cloud SQL (MySQL)(仅限公共 IP)
- 使用https://github.com/GoogleCloudPlatform/cloud-sql-jdbc-socket-factory上的说明构建 JDBC 驱动程序 JAR 文件
- 去牧马人
- 如果这是您第一次为 MySQL 配置 CloudSQL,请单击 Wrangler 屏幕中的添加连接按钮并选择数据库。
- 点击“Google Cloud SQL for MySQL”。</li>
- 如图所示上传先前构建的 JAR,然后单击 Next 按钮。
- 单击完成按钮完成上传。
- 上传驱动程序后,您将看到一个绿色复选标记,表示您的驱动程序已安装。
- 点击 Google Cloud SQL for MySQL 以创建新连接。连接模式打开后,单击“高级”链接(如果存在)。
输入连接字符串为
jdbc:mysql://google/<database>?cloudSqlInstance=<instance-name>&socketFactory=com.google.cloud.sql.mysql.SocketFactory&useSSL=false
其中表示您在先决条件部分创建的数据库,并引用您在实例详细信息页面的概述选项卡中显示的实例连接名称,例如:
例子:
jdbc:mysql://google/mysql?cloudSqlInstance=cloud-data-fusion-demos:us-west1:mysql&socketFactory=com.google.cloud.sql.mysql.SocketFactory&useSSL=false
- 输入您为此 CloudSQL 实例配置的用户名和密码
- 单击测试连接以验证是否可以成功地与数据库建立连接。
- 单击添加连接以完成任务。
- 完成所有步骤后,您将能够单击新定义的数据库连接并查看该数据库的表列表。
在管道(公共和私有 IP)中使用 Cloud SQL (MySQL)
- 执行上述 Wrangler 部分中的步骤 1-6
- 打开管道工作室
- 从左侧的插件面板中,将 Cloud SQL 源插件拖放到画布上,然后单击属性将其打开。
- 将插件名称指定为 cloudsql-mysql (假设您已经执行。
指定连接字符串,如下所示:
jdbc:mysql://google/?cloudSqlInstance=&socketFactory=com.google.cloud.sql.mysql.SocketFactory&useSSL=false
其中表示您在先决条件部分创建的数据库,并引用您在实例详细信息页面的概述选项卡中显示的实例连接名称,例如:
jdbc:mysql://google/mysql?cloudSqlInstance=cloud-data-fusion-demos:us-west1:mysql&socketFactory=com.google.cloud.sql.mysql.SocketFactory&useSSL=false
- 输入要从中导入数据的查询作为导入查询
- 输入用于数据库的用户名和密码。您还可以使用安全宏作为密码。
- 单击获取架构以填充插件的架构。
- 配置管道的其余部分并进行部署。