Google Spanner:JDBC 连接字符串?

2024-01-05

虽然 Spanner 看起来令人兴奋,但 Simba JDBC 驱动程序的文档(包含在此处的下载链接中:https://cloud.google.com/spanner/docs/partners/drivers https://cloud.google.com/spanner/docs/partners/drivers)相对稀疏,尤其是与 Simba JDBC BigQuery 驱动程序的文档相比(https://cloud.google.com/bigquery/partners/simba-drivers/ https://cloud.google.com/bigquery/partners/simba-drivers/).

特别是,文档仅提到一个连接字符串:

jdbc:cloudspanner://localhost;Project=simba-cloudspanner- jdbc;Instance=test-instance;Database=example-db

...没有关于如何指定服务帐户及其 p12 凭据或 JSON 文件路径(许多 Google Cloud 服务使用这些)的信息。

任何人都可以分享他们已成功用于连接到服务的 JDBC 连接字符串或其他设置详细信息吗?我尝试过,例如设置环境变量GOOGLE_APPLICATION_CREDENTIALS并提供与上面相同样式的 JDBC 字符串,但无济于事。

理想情况下,我想使用实例 ID、项目名称、数据库名称、服务帐户电子邮件和 p12 文件的组合,但我对其他身份验证选项持开放态度。

编辑:当尝试GOOGLE_APPLICATION_CREDENTIALS策略,我生成了这个日志文件,以防它有任何帮助https://gist.github.com/aryeh-looker/e6b1b1617d301f0a247463216c96535d https://gist.github.com/aryeh-looker/e6b1b1617d301f0a247463216c96535d


仔细检查了我的工作,看来我am事实上能够通过如上所述的连接字符串并通过设置环境变量进行连接GOOGLE_APPLICATION_CREDENTIALS。最好有一些其他选项,并且文档仍然有点参差不齐(没有提及环境变量),因此更多信息可能是理想的。

这是一个半可行的解决方案。它的缺点是您不能在同一进程中与不同的服务帐户建立多个连接。


编辑2:这似乎不起作用。当指向 JSON 文件时,我收到有关未指定实例的错误。

编辑:看起来最新版本的 Spanner 驱动程序,有一种方法可以做到这一点。

最新版本的驱动程序 (1.0.4.1005) 似乎支持可选的 JDBC 参数PvtKeyPath它采用您的私钥的路径,而不是必须设置GOOGLE_APPLICATION_CREDENTIALS多变的。值得一看。

从随附的 PDF 文档中:

所以你会得到一个像这样的 URL:jdbc:cloudspanner://;Project=...;PvtKeyPath=/path/to/credentials.json

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google Spanner:JDBC 连接字符串? 的相关文章

随机推荐

  • SQL 不断收到 ON UPDATE CASCADE 错误

    大家好 我正在使用这个 ON UPDATE CASCADE 功能 但我仍然无法让它工作 我的第一张桌子 CREATE TABLE Stab Stab id int not null Sprache VARCHAR2 2000 Vorname
  • Swift 保留周期和闭包

    我尝试做很多研究来理解保留周期 但我似乎在我的例子中找不到任何东西 我确实知道 如果我将属性设置为闭包 则会发生保留周期 并且需要使用弱或无主 但我有两个例子 我想知道它们是否正确完成 提前致谢 我已经尝试查看它们是否已经在 stackov
  • jest.toHaveBeenCalledWith 中松散匹配一个值

    我有一个分析跟踪器 它只会在 1 秒后调用 并且带有一个对象 其中intervalInMilliseconds 持续时间 值为not确定性的 我该如何使用jest toHaveBeenCalledWith测试对象 test pageStat
  • 有没有办法在非模板类中定义模板成员?

    假设我有一个名为的类模板Compute 和另一个名为Function A使用成员函数模板 template
  • Laravel 4 - 显示带有旧数据输入以及数据库信息的编辑表单

    我正在为我的应用程序制作一个编辑表单 我想知道是否有人可以告诉我如何将数据库中的数据获取到我的文本字段中 我可以根据用户的点击找到我需要编辑的记录 如果我执行以下操作 我可以显示信息 value letter gt subject 但是 我
  • C# WPF 即使在最小化时也捕获 keydown

    我想知道如何让我的应用程序捕获任何 keydown keyup 即使应用程序表单最小化也是如此 假设程序最小化 然后用户按 A 将出现一个弹出控件 请注意 我的程序可以运行 但在最小化时不能运行 谢谢 你需要的是HotKeys 没有内置的
  • 从父框架中的 iframe 打开锚标记

    给定以下 HTML iframe 中的锚标记是否可以定位父窗口 div div iframe pageview html 内容 a href http www google com link a 你想要的target属性 https dev
  • 移动应用商店分析选项(Apple、Android、OVI 等)? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有人有移动应用商店分析软件 服务的经验吗 我目前只为 iOS 开发 所以这是我主要感兴趣的 但是我想知道
  • 在 Feign 客户端中使用 spring 表单编码器时,请求正文未正确编码和隐藏

    我已经为 spring open feign 添加了必要的依赖项 如中提到的https github com OpenFeign feign form https github com OpenFeign feign form并遵循上述 f
  • 如何在两个表格之间添加垂直线?

    这是标记 我想在两个表格之间添加一条垂直线 我不想在这里使用图像 我需要一个纯 html 解决方案 div table width 50 tr td p class dotted row 1 cell 1 p td td p class d
  • PgAdmin 的 Kubernetes 持久卷挂载

    我正在尝试为我的 pgadmin 部署创建持久卷声明 以便在每次从 CD 管道部署后推出更新时可以保留我的设置 服务器等 在我的日志中 我收到以下错误 2020 10 05 00 54 56 0000 91 INFO Worker exit
  • Angular2:如何向应用程序注入没有装饰器的服务?

    当尝试使用时Http在 App 组件 我们正在引导的组件 中一切正常 找到 export default class AppComponent constructor public http Http console log this ht
  • 删除 MagicalRecord 中的实体不会持久

    我在使用 MagicalRecord 时遇到了一个奇怪的问题 删除不会持久 当我删除时 NSFetchedResultsControllerDelegate 正确地看到该对象已被删除 但是 如果我关闭并重新打开应用程序 该实体就会重新出现
  • Executor 上的 AsyncTask 和 PriorityBlockingQueue 实现问题

    在浪潮中这个问题 https stackoverflow com questions 12039596 asynctask on executor and priorityblockingqueue并有许多提示另一个 https stack
  • 测量计时器的精度(例如秒表/QueryPerformanceCounter)

    鉴于StopwatchC 中的类可以在下面使用三个不同的计时器 例如 系统定时器例如精度约 10 ms取决于可以设置的定时器分辨率timeBeginPeriod https msdn microsoft com en us library
  • plot.new尚未被调用

    为什么会发生这种情况 plot x y yx lm lt lm y x lines x predict yx lm col red 错误于plot xy xy coords x y type type plot new尚未被调用 某些操作
  • C# 解码(解压缩)PDF 文件的 Deflate 数据

    我想在 C 中解压缩一些 DeflateCoded 数据 提取的 PDF 不幸的是 我每次都会遇到异常 解码时发现无效数据 但数据是有效的 private void Decompress FileStream fs new FileStre
  • Number::toString() 抽象操作

    我试图理解如何数字 toString x https 262 ecma international org 11 0 sec numeric types number tostring抽象操作有效 据我所知 其要点似乎是非常大 n gt 2
  • exec 总是返回 -1 (或 127)

    我在生产服务器上使用 php 5 2 9 并且 exec 函数的行为似乎是 非标准 如果我跑exec ls output return var then output将按预期包含当前文件夹中的文件列表 但是 return var将被设置为
  • Google Spanner:JDBC 连接字符串?

    虽然 Spanner 看起来令人兴奋 但 Simba JDBC 驱动程序的文档 包含在此处的下载链接中 https cloud google com spanner docs partners drivers https cloud goo