首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从云数据流转换连接到云sql

无法从云数据流转换连接到云sql
EN

Stack Overflow用户
提问于 2019-05-14 16:50:56
回答 2查看 456关注 0票数 0

在云数据流中运行时,我无法从自定义DoFn中连接到云SQL。日志中显示的错误如下:

  • 通过ssl套接字连接到Cloud实例[]。
  • Docbuilder异常: com.zaxxer.hikari.pool.HikariPool$PoolInitializationException:未能初始化池:无法创建到数据库服务器的连接。

当从appenginer句柄连接到云sql时,相同的代码和配置工作得很好。

我已经显式地给出了计算引擎服务帐户-compute@developer.gserviceaccount.com - Cloud客户端、Cloud查看器和编辑器角色。

任何帮助来排除这一点是非常感谢的!

EN

回答 2

Stack Overflow用户

发布于 2019-05-15 15:01:49

要从外部应用程序连接到Cloud,可以在文档中遵循一些方法--如何从外部applications1连接到Cloud -您可以找到实现目标的替代方案和步骤。

1

票数 0
EN

Stack Overflow用户

发布于 2019-05-22 20:00:30

在尝试使用带有云数据流的连接池来使用自定义DoFn的cloud时,我也遇到了许多问题。现在,我不记得我的错误是否与您的错误相同,但我的解决方案是在DoFn类中创建一个@Setup方法,如下所示:

代码语言:javascript
复制
static class ProcessDatabaseEvent extends DoFn<String, String> {
@Setup
public void createConnectionPool() throws IOException {
  final Properties properties = new Properties();
  properties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("config.properties"));
  final String JDBC_URL = properties.getProperty("jdbc.url");
  final String JDBC_USER = properties.getProperty("jdbc.username");
  final String JDBC_PASS = properties.getProperty("jdbc.password");

  final HikariConfig config = new HikariConfig();
  config.setMinimumIdle(5);
  config.setMaximumPoolSize(50);
  config.setConnectionTimeout(10000);
  config.setIdleTimeout(600000);
  config.setMaxLifetime(1800000);
  config.setJdbcUrl(JDBC_URL);
  config.setUsername(JDBC_USER);
  config.setPassword(JDBC_PASS);

  pool = new HikariDataSource(config);
}

@ProcessElement
public void processElement(final ProcessContext context) throws IOException, SQLException {
//Your DoFn code here...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56135135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档