gpt4 book ai didi

google-cloud-data-fusion - 无法将 Cloud Data Fusion 与 Google Cloud SQL for PostgreSQL 连接起来

转载 作者:行者123 更新时间:2023-12-01 01:41:42 25 4
gpt4 key购买 nike

我的目标是通过 Cloud Data Fusion 管道将数据从 Cloud SQL Postgres 读取到 BigQuery。

为此,我设置了一个 Cloud Data Fusion 实例,并为服务帐户分配了以下两个权限:(参见 https://cloud.google.com/data-fusion/docs/how-to/create-instance#setting_up_permissions)

  • 云 SQL 客户端
  • 云数据融合API服务代理

  • 作为下一步,我将自己连接到 Cloud Data Fusion 实例,并导航到 Wrangler -> Add Connection -> Database -> Google Cloud SQL for PostgreSQL .

    作为司机,我上传了 postgres-socket-factory-1.0.13-jar-with-dependencies.jar我在这里下载的: https://github.com/GoogleCloudPlatform/cloud-sql-jdbc-socket-factory

    对于驱动程序配置,我设置:
  • 名称:cloudsql-postgresql
  • 类名:org.postgresql.Driver

  • 对于数据库连接,我设置:
  • 连接名称:<PROJECT_NAME>:<REGION>:<INSTANCE_CONNECTION_NAME>
  • 连接字符串:jdbc:postgresql://google/<DATABASE_NAME>?cloudSqlInstance=<INSTANCE_CONNECTION_NAME>&socketFactory=com.google.cloud.sql.postgres.SocketFactory
  • 用户名:数据库用户名
  • 密码:数据库密码

  • 单击“测试连接”后,我收到 org.postgresql.Driver 错误信息。

    enter image description here

    最佳答案

    您很可能需要一个驱动程序和 JDBC Socket Factory 才能使其正常工作。您应该将 postgres 连接器与套接字工厂捆绑到一个 uber-jar 中,看看是否能解决问题。

    这是一个快速(未经测试)的 pom,应该可以完成此操作:

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>postgres-with-cloud-sql-socket-factory</artifactId>
    <packaging>pom</packaging>
    <version>0.0.1</version>

    <dependencies>
    <dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>42.2.5</version>
    </dependency>
    <dependency>
    <groupId>com.google.cloud.sql</groupId>
    <artifactId>postgres-socket-factory</artifactId>
    <version>1.0.13</version>
    </dependency>
    </dependencies>

    <build>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4.1</version>
    <configuration>
    <!-- get all project dependencies -->
    <descriptorRefs>
    <descriptorRef>jar-with-dependencies</descriptorRef>
    </descriptorRefs>
    </configuration>
    <executions>
    <execution>
    <id>make-assembly</id>
    <!-- bind to the packaging phase -->
    <phase>package</phase>
    <goals>
    <goal>single</goal>
    </goals>
    </execution>
    </executions>
    </plugin>
    </plugins>
    </build>
    </project>

    关于google-cloud-data-fusion - 无法将 Cloud Data Fusion 与 Google Cloud SQL for PostgreSQL 连接起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55880595/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com