一个连接,每个表面
PlanetScale 数据可以去哪里?
- 1 出站连接
- 0 入境口岸
- 只读 · 凭据保留
运行
- 为您的团队、供应商和合作伙伴
-
在 Excel 插件 · 按需刷新
-
谷歌工作表 附加组件 · 按需刷新
-
新星人工智能 用简单的英语提问 · 文本转 SQL
-
数据查看器 分享实时结果 · 团队、供应商、合作伙伴 · 任何设备
- 对于应用程序和系统
-
REST API JSON 端点 · OpenAPI 3.1
-
Power BI Power Query M
-
计划同步 Google Sheets · Airtable · Baserow · SeaTable · Smartsheet · Anvil
- 人工智能工具
-
人工智能助手 Claude · Cursor · MCP 服务器
- 已送达
-
警报和报告 Slack · Discord · 电子邮件 · Webhook
查询流通过一个只读连接,从 Microsoft Excel、Google Sheets、Power BI、基于 MCP 的 AI 助手以及 REST 端点读取 PlanetScale Postgres 数据库。此卡专门用于 PlanetScale Postgres(.horizon.psdb.cloud 上的新产品),而非 PlanetScale 更为人熟知的基于 Vitess 的 MySQL 服务。此卡默认使用 6432 端口上的 PSBouncer,这是大多数 PlanetScale Postgres 数据库所期望的端口,并且代理会禁用预处理语句以适应此端口。
PlanetScale Postgres 是网络上的 PostgreSQL。 — 这是标准驱动程序,因此以下所有指南均适用。唯一与 PlanetScale 相关的部分是连接字符串,详见下文。 连接详情.
- 为您的团队、供应商和合作伙伴
-
PlanetScale 力争卓越 微软 Excel · Excel 加载项
将 PlanetScale 的实时结果直接导入工作表,并可按需刷新——支持桌面版 Excel、Excel Online 和 Microsoft 365。
PostgreSQL 指南 -
PlanetScale 数据导入 Google Sheets 表格插件
从侧边栏运行已保存的 PlanetScale 查询,并将结果行拖放到工作表中。共享的协作者可以自行刷新工作表。
PostgreSQL 指南 -
向 Nova 询问有关 PlanetScale 的信息 Nova AI · 文本转 SQL
用简单的英语提问。Nova 已经了解您的 PlanetScale 表,会自动编写并运行 SQL 语句,解释答案并绘制图表——无需编写查询语句,也无需提供任何凭据。
Nova 的工作原理 -
PlanetScale 到数据查看器 结果共享 · 团队、供应商、合作伙伴 · 手机、平板电脑、台式机
您可以与任何人(同事、供应商、合作伙伴)共享实时 PlanetScale 结果,将其以可收藏的网格形式呈现,无论在手机、平板电脑还是台式机上打开,结果都会自动更新。他们看到的是结果,而不是 SQL 语句或凭据。
数据查看器的工作原理 - 对于应用程序和系统
-
PlanetScale REST API HTTP 端点
将 PlanetScale 查询发布为任何应用程序都可以调用的已认证 JSON 端点,符合 OpenAPI 3.1 规范,并预置了 Postman、Insomnia 和 Hoppscotch 集合。无需打开数据库端口。
PostgreSQL 指南 -
PlanetScale 到 Power BI Power Query M
将生成的 Power Query M 粘贴到 Power BI 高级编辑器中,报表即可通过 HTTPS 读取 PlanetScale 的实时结果——无需 ODBC 驱动程序,也无需打开数据库端口。
Power BI 的工作原理 -
PlanetScale 到 Airtable 自动化平台
按计划将 PlanetScale 行同步到 Airtable,或者在 Airtable 自动化脚本中获取它们。
PostgreSQL 指南 -
PlanetScale 到 Baserow 自动化平台
通过 REST 端点从 PlanetScale 向 Baserow 表提供数据——无论是自托管还是 Baserow 云。
PostgreSQL 指南 -
从 PlanetScale 到 SeaTable 自动化平台
无需导出文件或公开数据库,即可使用 PlanetScale 数据保持 SeaTable 数据库的最新状态。
PostgreSQL 指南 -
PlanetScale 到 Smartsheet 自动化平台
将 PlanetScale 的结果导入 Smartsheet 表格,以便计划和报告能够从源系统读取数据,而不是从上周的导出数据读取数据。
PostgreSQL 指南 -
PlanetScale 到 Anvil Anvil Works · 应用平台
通过 REST 端点将 PlanetScale 集成到 Anvil Python 应用程序中,而不是将数据库凭据嵌入到应用程序中。
PostgreSQL 指南 - 人工智能工具
-
PlanetScale MCP 服务器 Claude、Cursor 和 MCP 客户端
赋予 AI 助手对 PlanetScale 的只读访问权限,并提供它编写正确 SQL 所需的架构——聊天中不包含凭据。
PostgreSQL 指南 - 已送达
-
PlanetScale 警报和报告 Slack · Discord · 电子邮件 · Webhook
将 PlanetScale 查询添加到计划中,并将查询结果发送到 Slack、Discord、电子邮件或签名 webhook,或者等到行数、阈值或百分比变化超过您设定的界限时才发送消息。
警报和报告的工作原理
工作原理
5 个步骤,无需更改入站防火墙规则
您可以根据需要将网络代理安装在任何位置。它会打开一个出站连接,但从不监听,因此 PlanetScale 会将其视为普通客户端,您的网络也无需任何入站规则。
从数据库复制字符串,然后在 PlanetScale 控制台中连接并粘贴。系统会读取 postgresql:// 格式和 host= 关键字格式。
除非有特殊原因,否则请将模式保持在 PSBouncer Pool 上——端口 6432 位于同一主机上,这是 PlanetScale 默认指向的位置。
请检查用户名是否保留了点号。PlanetScale 的用户名格式为 postgres.<数据库 ID>,点号后面的部分用于指定正确的数据库。
保存。Microsoft Excel、Google Sheets、Power BI、MCP 和 REST 都通过这一个连接读取数据,或者将其与其他数据源合并到一个只读语句中。
专题深度解析
PlanetScale能为你提供什么
这是 PlanetScale Postgres,不是 PlanetScale MySQL。
PlanetScale 曾是 Vitess 公司的一部分,所以有必要坦诚地说明这张卡连接的是哪款产品。
- 此连接器适用于 PlanetScale Postgres。 — 托管在 .horizon.psdb.cloud 上的 Postgres 服务。它使用 Postgres 网络协议,代理通过 Npgsql 连接到它。
- 它不适用于 Vitess 支持的 MySQL 服务。没有针对该服务的预设,而且 PlanetScale 提供的 MySQL 连接字符串也不适用于这张网卡。
- 连接以 PostgreSQL 格式保存,并保留 PlanetScale 作为连接标识。实际上并没有名为 PlanetScale 的连接类型。 — 这也意味着,您之前与 .horizon.psdb.cloud 主机建立的普通 Postgres 连接将立即识别出品牌标识。
- 下游的一切都是普通的 Postgres:模式、类型,以及作为跨源引用的默认模式的 public。
PSBouncer 是默认程序,端口号决定程序的运行方式。
PlanetScale 的池化器运行在与直接端点相同的主机名上,只是端口不同。网卡默认会将您连接到池化后的端点,因为 PlanetScale 会将您指向那里。
- Direct 端口为 5432。PSBouncer PlanetScale 的交易池使用同一主机上的 6432 端口。除此之外,它们之间没有任何区别。
- 在 6432 端口,代理会关闭预编译语句,并且停止在会话关闭时重置会话。事务池可能会在语句之间提供不同的后端,而假定后端服务不同的驱动程序可能会以看似随机的方式失败。
- 触发此问题的是端口,而不是下拉菜单。下拉菜单的存在是为了让显卡能够阻止两种设置不一致的情况发生:选择错误的端口组连接,或者直接连接到 6432 端口。它会在保存之前提示你,而不是在第一次出现异常错误之后。
- 无需记住单独的池化主机名,也无需第二套凭据。只需更改端口,整个交换机就切换完毕了。
用户名里有个点,这很重要。
四个字段中有两个很容易出错,所以这张卡片会检查这两个字段。
- PlanetScale 的用户名格式为 postgres.<数据库 ID>。如果粘贴时省略了点号,系统会阻止您操作,因为点号后面的部分用于选择数据库。
- 密码开头或结尾带有空格会被标记出来。这是剪贴板操作导致的,会被当作普通的身份验证错误处理,从而误导用户去查找错误的问题。
- 任何不是 Postgres 连接字符串的内容都会被拒绝,并显示一条消息,指出正确的连接字符串在哪里,而不是被部分解析到错误的字段中。
- 粘贴的字符串不会被存储。它只在填写表单时读取一次,然后就被丢弃,因此密码只存在于一个地方,而不是两个地方。
-- 普通 Postgres,只读,通过 PSBouncer 或直接 SELECT c.name, COUNT(o.id) AS orders, SUM(o.amount) AS revenue FROM public.customers AS c JOIN public.orders AS o ON o.customer_id = c.id WHERE o.placed_at >= now() - interval '30 days' GROUP BY c.name ORDER BY revenue DESC;
每个数据库连接器共享
适用于所有数据库连接器
- 仅限出站 — 代理程序会打开一个加密连接到查询流。无需转发入站端口,无需 VPN,无需 IP 允许列表,您的数据库信息不会暴露在互联网上。
- 凭证保留 — 数据库用户名和密码存储在您安装代理的计算机上。Query Streams 永远不会收到这些信息,也无法自行访问您的数据库。
- 只读,强制执行 ——一次只执行一条语句,仅限 SELECT 及其相关语句。写入操作会在发送到服务器之前就被本地机器拒绝,而不是依赖于其他人设置的权限。
- 部署任意数量的代理 每个站点、区域或云端只需一个代理。所有数据源都显示在同一个下拉菜单中,因此无需了解哪个代理托管哪些数据源。
查询保存后您将获得什么?
- 分享的是能力,而不是 SQL — 同事或外部合作伙伴可以运行您的查询并更改其筛选条件,而无需查看其背后的语句。
- 双向过滤 — 您可以自己将它们声明为 @variables,或者让连接器发现 WHERE 子句中已有的字面值,并将其作为下拉列表提供。
- 随时随地阅读 — Microsoft Excel、Google Sheets、Power BI、REST API、MCP 上的 AI 助手、查询生成器和 Nova 都读取同一个已保存的查询。
- 同时运行多个程序 — 将五个已保存的查询分别保存到五个工作表标签中,同时进行流式传输,无论结果有多大。
- 将其连接到您已连接的任何其他内容 — 用一条只读语句访问另一个数据库、业务 API 或文件文件夹。
跨源 SQL
将 PlanetScale 连接到您的其他数据
一条语句可以同时跨越 PlanetScale 和其他连接。每个数据源只运行它能够处理的部分,并将结果流式传输回来,连接操作在中心集中完成——数据源之间互不通信,也不会复制任何数据。
3 个连接 · 3 个代理
一份声明
——没有任何复制、合并或安排操作。
选择 c.region,COUNT(*) AS orders,SUM(i.amount_due) AS invoiced
从 ps_app.公共.订单1 f
连接 ERP SQL.dbo.customers2 c ON c.id = f.customer_id
连接 计费.stripe.invoices3 i ON i.customer = c.stripe_id
GROUP BY c.区域
ORDER BY 发票上的描述;
这三个部分分别是连接、模式和表——连接名称就是你给它起的任何名字。这里用列举例说明;你的表就是你自己的表。所有部分都采用只读模式:仅支持 SELECT、WITH 和 EXPLAIN 语句,并且对单个查询中每个数据源可以传输的数据量有限制。 联合查询的工作原理
连接详情
PlanetScale需要什么
- 主持人
- <name>.<region>.horizon.psdb.cloud
- 港口
- PSBouncer 使用 6432 端口,直接使用 5432 端口。两种方式主机相同——该网卡默认使用 6432 端口。
- 司机
- 由代理程序承载的 Npgsql——PlanetScale 端无需安装任何程序。
- 用户名
- 以点号结尾,例如 postgres.<数据库 ID>。该卡片会检查点号是否存在。
- TLS
- 必需,并且由代理强制为每个 .horizon.psdb.cloud 主机执行。已加密;证书链未经验证。
- 池化
- 在 6432 端口,代理会禁用预编译语句并跳过会话重置,这正是事务池所需要的。
- 已保存
- PostgreSQL 中,PlanetScale 仅作为一项标识保留——实际上并没有名为 PlanetScale 的连接类型。
- 不是这张卡
- PlanetScale 的基于 Vitess 的 MySQL 服务。此预设仅适用于 Postgres 产品。
- 默认架构
- 公开的,也就是联邦引用所携带的。
连接池的细节才是关键所在。PlanetScale 将 PSBouncer 设置为事务模式,这意味着您持有的连接并非绑定到某个后端——在两条语句之间,您可以随时切换后端。而默认的 Postgres 驱动程序则恰恰相反:它只准备一次语句,并期望下次调用时语句仍然存在,并且在关闭会话时会重置会话。对于事务连接池而言,这两个假设都失效了,而且失效是间歇性的,这是最糟糕的故障方式。代理会在检测到 6432 端口时关闭这两个功能,因此您无需了解这些细节。
明确产品边界并非吹毛求疵。PlanetScale 以 Vitess 服务闻名,因此,如果有人带着 PlanetScale 连接字符串来到这里,很可能也会遇到 MySQL 连接字符串。只需一句话就能说明这是 Postgres 服务,并且 Vitess 产品没有预设,从而避免了一场冗长的支持对话。
对于跨源查询,PlanetScale 就是普通的 Postgres。您创建的名为 ps_app 的连接实际上是 ps_app.public.orders,它可以通过一条只读语句连接到 CSV 文件文件夹、本地记录系统或计费 API——无需复制任何数据,也无需安排任何操作。
供应商文档: planetscale.com
常问问题
关于 PlanetScale Postgres 的问题
哪些工具可以通过查询流读取 PlanetScale Postgres 数据?
所有这些工具,只需一次连接即可使用:Excel、Google Sheets、MCP、REST API、Airtable、Baserow、SeaTable、Smartsheet、Anvil、Power BI、定时提醒和报表。只需连接一次数据库,所有平台都使用同一个只读连接——无需为每个工具单独设置,也无需创建数据副本。
我是否需要为我的 PlanetScale Postgres 数据库打开防火墙端口?
不。Query Streams 网络代理运行在您的网络内部,并打开一个单独的出站加密连接。它不会监听入站流量,无需 VPN,数据库也会保留其现有的防火墙规则。
查询流能否更改 PlanetScale Postgres 中的数据?
不。代理在执行时强制执行只读模式——一次只执行一条语句,仅限 SELECT 及其相关语句。凭据保留在代理上,绝不会发送到查询流。
Query Streams 需要哪些条件才能连接到 PlanetScale Postgres?
一个可访问的主机、一个角色及其密码——代理程序自带驱动程序,因此无需在数据库上安装任何内容。主机:<name>.<region>.horizon.psdb.cloud。端口:PSBouncer 使用 6432,直接连接使用 5432。两种方式使用相同的主机——该卡默认使用 6432 端口。驱动程序:Npgsql,由代理程序自带——无需在 PlanetScale 端安装任何内容。用户名:以点号开头,格式为 postgres.<database-id>。该卡会检查是否存在点号。
我可以在同一个查询中将 PlanetScale Postgres 连接到另一个数据库吗?
是的——这就是联合查询。一条语句可以同时引用 PlanetScale Postgres 和其他连接,格式为 connection.schema.table。每个数据源只运行它能够执行的部分,并将结果流式传输回来;连接操作在中心进行,因此数据源之间不会相互连接,也不会进行任何复制或调度。所有部分(SELECT、WITH 和 EXPLAIN)都采用只读模式,并且单个数据源在单次查询中可以传输的数据量有限制。联合查询是计划功能;联合查询页面会显示当前的数据源和大小限制。
连接 PlanetScale Postgres 与连接 PostgreSQL 有什么不同?
仅需连接字符串。PlanetScale Postgres 使用 PostgreSQL 网络协议,因此过滤器、调度、共享、Excel 和 Google Sheets 插件以及 MCP 服务器的行为都完全相同。PlanetScale 卡会预先填充提供商所需的主机、端口和 SSL 设置。
是否有 PlanetScale 到 Excel 的转换指南?
是的——这是 PostgreSQL 指南,而且就 PlanetScale Postgres 而言,指南内容完全正确。PlanetScale 使用 PostgreSQL 的网络协议,因此 PlanetScale 连接到 Excel、PlanetScale 连接到 Google Sheets 以及其他任何目标平台都遵循相同的步骤。唯一 PlanetScale 特有的部分是连接字符串,而 PlanetScale 卡片会自动为您填写这部分内容。

