You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为dbt-core及profiles.yml更换OAuth认证账号?

解决dbt-core BigQuery OAuth认证账号切换问题

清除Google OAuth本地缓存

dbt-bigquery依赖的Google客户端库会将OAuth认证凭据存储在本地特定目录,该目录与Python虚拟环境无关,因此删除venv无法解决问题。需手动清理缓存:

  • Windows:删除%APPDATA%\gcloud\legacy_credentials\<已删除账号邮箱>目录,以及%USERPROFILE%\.dbt\bigquery_credentials相关文件
  • macOS/Linux:删除~/.config/gcloud/legacy_credentials/<已删除账号邮箱>目录,以及~/.dbt/bigquery_credentials文件

重新触发OAuth认证

缓存清除后,运行任意dbt命令(如dbt run),系统会自动弹出浏览器要求重新选择账号,此时选择你的商务账号完成认证流程即可。

备选方案:改用服务账号密钥认证

若想彻底避免OAuth账号切换问题,可修改profiles.yml配置,使用服务账号密钥认证:

  1. 下载商务账号对应的服务账号JSON密钥文件
  2. 更新profiles.yml的dev配置段:
dev:
  type: bigquery
  method: service-account
  project: my-project-id-123456
  dataset: dbt_name
  location: EU
  threads: 8
  keyfile: /path/to/your/service-account-key.json

配置完成后,运行dbt命令将直接使用服务账号密钥完成认证,无需再处理OAuth缓存问题。

内容的提问来源于stack exchange,提问作者Vega

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 00:12:26