如何将JetBrains DataGrip连接到CockroachDB Serverless并解决相关报错
报错原因
[08004] FATAL: codeParamsRoutingFailed: missing cluster name in connection string
该报错由CockroachDB Serverless的多租户路由规则触发:服务端需要通过连接串里的集群标识定位到你的专属实例,缺少该参数就会拒绝连接。
正确创建连接的步骤
- 先从CockroachDB Cloud控制台获取你的集群核心信息:集群地址、集群标识、账号密码、要连接的数据库名
- 打开DataGrip,新建数据源,选择PostgreSQL驱动(CockroachDB完全兼容PostgreSQL协议,直接使用该驱动即可)
- 填写基础连接参数:
- 主机:填写你的集群服务地址,比如
free-tier.gcp-us-central1.cockroachlabs.cloud - 端口:默认填
26257 - 用户、密码:填写你创建集群时配置的数据库账号密码
- 数据库:默认可以填
defaultdb,也可以填你自建的数据库名
- 主机:填写你的集群服务地址,比如
- 配置集群标识参数:切换到「高级」选项卡,找到名为
options的参数,填入值--cluster=<你的集群标识>,集群标识一般是集群名称加后缀编号,比如my-test-cluster-456 - 配置SSL规则:切换到「SSL」选项卡,加密模式选择
verify-full,无需手动上传证书,DataGrip会自动信任公共根证书 - 点击「测试连接」,提示连接成功即可保存配置
更简单的配置方式
你也可以直接把CockroachDB Cloud控制台提供的完整JDBC/PostgreSQL连接串,直接粘贴到DataGrip新建数据源页面的「URL」输入框,DataGrip会自动解析所有参数,无需手动逐个填写,能有效避免参数填错的问题。
内容的提问来源于stack exchange,提问作者Jordan Lewis
相关产品推荐
相关产品推荐

