MariaDB 标志

关系引擎

连接 玛丽亚数据库 适用于 Excel、Google Sheets、AI 和 REST

与 MySQL 兼容的关系型数据库引擎。可直接用于大多数 MySQL 工作负载,包括 SkySQL 和自托管集群。

一个连接,每个表面

MariaDB 数据可以放在哪里?

Query Streams 可以从 Microsoft Excel、Google Sheets、Power BI、通过 MCP 的 AI 助手以及 REST 端点实时读取 MariaDB 数据库的 SQL 语句。自托管代理程序通过 3306 端口从您的内部网络连接——无需入站端口、VPN 或 IP 地址白名单。MariaDB 会被识别为它本身,而不是被当作带有不同标签的 MySQL 来处理:代理程序会在连接时读取服务器横幅并报告真实的产品和版本,因此您永远不会遇到需要使用错误文档进行调试的情况。

  1. 为您的团队、供应商和合作伙伴
  2. MariaDB 到 Excel 微软 Excel · Excel 加载项

    将 MariaDB 的实时结果直接提取到工作表中,并按需刷新——支持桌面版 Excel、Excel Online 和 Microsoft 365。

    MariaDB 指南
  3. MariaDB 到 Google 表格 表格插件

    从侧边栏运行已保存的 MariaDB 查询,并将结果行拖放到工作表中。共享协作者可以自行刷新工作表。

    MariaDB 指南
  4. 向 Nova 询问 MariaDB 的相关事宜 Nova AI · 文本转 SQL

    用简单的英语提问。Nova 已经了解你的 MariaDB 表,会自动编写并运行 SQL 语句,解释答案并绘制图表——无需编写查询语句,也无需提供任何凭据。

    Nova 的工作原理
  5. MariaDB 到数据查看器 结果共享 · 团队、供应商、合作伙伴 · 手机、平板电脑、台式机

    您可以与任何人(同事、供应商、合作伙伴)共享实时 MariaDB 查询结果,以可收藏的网格形式呈现,无论在手机、平板电脑还是台式机上打开,都能立即重新显示。他们看到的是查询结果,而不会看到 SQL 代码或凭据。

    数据查看器的工作原理
  6. 对于应用程序和系统
  7. MariaDB REST API HTTP 端点

    将 MariaDB 查询发布为任何应用程序都可以调用的已认证 JSON 端点,符合 OpenAPI 3.1 规范,并预置了 Postman、Insomnia 和 Hoppscotch 集合。无需打开数据库端口。

    MariaDB 指南
  8. MariaDB 到 Power BI Power Query M

    将生成的 Power Query M 粘贴到 Power BI 高级编辑器中,报表即可通过 HTTPS 读取 MariaDB 的实时结果——无需 ODBC 驱动程序,也无需打开数据库端口。

    Power BI 的工作原理
  9. MariaDB 到 Airtable 自动化平台

    按计划将 MariaDB 行同步到 Airtable,或者在 Airtable 自动化脚本中获取它们。

    MariaDB 指南
  10. MariaDB 到 Baserow 自动化平台

    通过 REST 端点从 MariaDB 向 Baserow 表提供数据——无论是自托管还是 Baserow 云。

    MariaDB 指南
  11. MariaDB 到 SeaTable 自动化平台

    无需导出文件或暴露数据库,即可使用 MariaDB 数据保持 SeaTable 数据库的最新状态。

    MariaDB 指南
  12. MariaDB 到 Smartsheet 自动化平台

    将 MariaDB 结果推送到 Smartsheet 网格中,以便计划和报告能够从源系统读取数据,而不是从上周的导出数据读取数据。

    MariaDB 指南
  13. MariaDB 到 Anvil Anvil Works · 应用平台

    通过 REST 端点将 MariaDB 集成到 Anvil Python 应用程序中,而不是将数据库凭据嵌入到应用程序中。

    MariaDB 指南
  14. 人工智能工具
  15. MariaDB MCP 服务器 Claude、Cursor 和 MCP 客户端

    赋予 AI 助手对 MariaDB 的只读访问权限,并提供它编写正确 SQL 所需的架构——聊天中无需提供凭据。

    MariaDB 指南
  16. 已送达
  17. MariaDB 警报和报告 Slack · Discord · 电子邮件 · Webhook

    将 MariaDB 查询添加到计划中,并将查询结果发送到 Slack、Discord、电子邮件或签名 webhook,或者等到行数、阈值或百分比变化超过您设定的界限时才发送消息。

    警报和报告的工作原理

工作原理

5 个步骤,无需更改入站防火墙规则

01

在能够访问服务器的机器上安装网络代理——自托管集群、SkySQL 或同一主机上的容器。

02

请输入主机、端口、数据库、用户名和密码。如果服务器提供 TLS 加密,请启用它;如果服务器需要,则接受客户端证书。

03

代理读取服务器横幅并确认它是 MariaDB 而不是 MySQL,然后读取表和列布局,以便查询构建器可以提供真实名称。

04

您可以编写只读 SQL,也可以让 Nova 来编写。筛选条件可以是您声明的 @variable 变量,也可以是 WHERE 子句中连接器所指向的字面值。

05

从 Excel、Sheets、Power BI、MCP 或 REST 中读取已保存的查询,并将其分享给永远不会看到该语句的人。

专题深度解析

MariaDB 能给你带来什么?

MariaDB 真实数据中令人尴尬的部分

MariaDB继承了MySQL宽松的机制,长期存在的模式中充斥着这类问题。这些问题需要处理,而不是避免。

  • 零日期 — 对于大多数客户端来说,'0000-00-00' 是合法且致命的。它会被识别为空日期,而不是导致整个查询失败。
  • tinyint 的意思是 tinyint — tinyint(1) 是传统的布尔值,结果为 true 或 false,但普通的 tinyint 仍然是一个很小的整数。
  • 精确的小数 — DECIMAL 列会保留您声明的精度和小数位数。资金在流出过程中不会变成浮点数。
  • 默认使用 utf8mb4 编码,因此表情符号和所有 CJK 字符都能正常显示。
  • 跨数据库连接仅需一个连接即可完成。 — 如果登录用户可以看到同一服务器上的两个数据库,则一个查询可以读取这两个数据库。

如果登录失败,且登录名指向一个您从未配置过的插件,则表示登录失败。

在你花一下午时间研究这个问题之前,最好先了解一下。MariaDB 会用伪造的握手包来响应它无法识别的账户登录尝试——这是故意的,目的是防止攻击者利用错误信息推断出哪些用户名存在。它所指的插件通常是 auth_gssapi_client,这使得错误信息看起来像是 Kerberos 问题,而实际上它与 Kerberos 问题毫无关系。

  • 这是服务器端的行为,而非查询流(Query Streams)的行为。这意味着该帐户不存在,或者代理程序运行所在的主机未授予该帐户权限。
  • 如果账户确实存在,则会显示简单的“访问被拒绝”错误,这使得两者很容易区分:尝试使用一个故意错误的密码登录一个你知道是真实的用户名。
  • 修复程序已在服务器上。 — 创建用户,并从代理的主机名或“%”授予其权限。

联合连接使用数据库名称

MariaDB 在数据库和表之间没有模式层,因此在跨源查询中,三部分名称的中间部分是数据库本身。

-- shop_prod 是连接,sales 是 MariaDB 数据库 SELECT c.region, COUNT(*) AS orders FROM shop_prod.sales.orders o JOIN pg_crm.public.customers c ON c.id = o.customer_id GROUP BY c.region

每个数据库连接器共享

适用于所有数据库连接器

  • 仅限出站 — 代理程序会打开一个加密连接到查询流。无需转发入站端口,无需 VPN,无需 IP 允许列表,您的数据库信息不会暴露在互联网上。
  • 凭证保留 — 数据库用户名和密码存储在您安装代理的计算机上。Query Streams 永远不会收到这些信息,也无法自行访问您的数据库。
  • 只读,强制执行 ——一次只执行一条语句,仅限 SELECT 及其相关语句。写入操作会在发送到服务器之前就被本地机器拒绝,而不是依赖于其他人设置的权限。
  • 部署任意数量的代理 每个站点、区域或云端只需一个代理。所有数据源都显示在同一个下拉菜单中,因此无需了解哪个代理托管哪些数据源。

查询保存后您将获得什么?

  • 分享的是能力,而不是 SQL — 同事或外部合作伙伴可以运行您的查询并更改其筛选条件,而无需查看其背后的语句。
  • 双向过滤 — 您可以自己将它们声明为 @variables,或者让连接器发现 WHERE 子句中已有的字面值,并将其作为下拉列表提供。
  • 随时随地阅读 — Microsoft Excel、Google Sheets、Power BI、REST API、MCP 上的 AI 助手、查询生成器和 Nova 都读取同一个已保存的查询。
  • 同时运行多个程序 — 将五个已保存的查询分别保存到五个工作表标签中,同时进行流式传输,无论结果有多大。
  • 将其连接到您已连接的任何其他内容 — 用一条只读语句访问另一个数据库、业务 API 或文件文件夹。

跨源 SQL

将 MariaDB 连接到您的其余数据

一条语句可以同时跨越 MariaDB 和其他连接。每个数据源只运行它能够处理的部分,并将结果流式传输回来,连接操作则在中心位置集中执行——各个数据源之间互不通信,也不会复制任何数据。

3 个连接 · 3 个代理

玛丽亚数据库 关系引擎
PostgreSQL 关系引擎
条纹 付款与账单

一份声明

——没有任何复制、合并或安排操作。
选择   c.region,COUNT(*) AS orders,SUM(i.amount_due) AS invoiced
从     商店产品.shopdb.orders1 f
连接     pg_crm.public.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 语句,并且对单个查询中每个数据源可以传输的数据量有限制。 联合查询的工作原理

连接详情

MariaDB 需要什么

港口
默认端口号为 3306,可接受任何端口。
加密
TLS 是可选的——默认关闭,除非勾选;勾选后则为必需而非首选。接受 CA 证书、客户端证书和密钥。
凭据
数据库用户名和密码保存在代理服务器上。查询流永远不会收到它们。
司机
MySqlConnector 2.5.0 已捆绑安装——无需在服务器或客户端上安装任何软件。
服务器检测
横幅信息在连接时读取,因此返回的产品和版本信息是 MariaDB 自身的信息。
字符集
utf8mb4,所以表情符号和完整的中日韩字符集在往返过程中都能保留下来
旧日期
'0000-00-00' 被读取为空日期,而不是抛出异常。
暂停
连接耗时 30 秒,流媒体播放期间每条语句的提交耗时 30 秒。
只读
在将声明发送到服务器之前,会在您自己的计算机上强制执行。

MariaDB 和 MySQL 使用相同的网络协议,因此它们共用一个驱动程序,但它们并不被视为同一产品。代理会在每次连接测试时读取服务器横幅,并报告 MariaDB 自身的版本字符串。当您需要了解即将使用的函数在您的分支版本中是否存在时,这个字符串就显得尤为重要。

在跨源查询中,三段式引用的中间部分是 MariaDB 数据库名称,因为 MariaDB 没有单独的模式层。例如,名为 shop_prod 的连接读取销售数据库时,其写法为 shop_prod.sales.orders。

供应商文档: mariadb.org

常问问题

关于 MariaDB 的问题

哪些工具可以通过查询流读取 MariaDB 数据?

所有这些工具,只需一次连接即可使用:Excel、Google Sheets、MCP、REST API、Airtable、Baserow、SeaTable、Smartsheet、Anvil、Power BI、定时提醒和报表。只需连接一次数据库,所有平台都使用同一个只读连接——无需为每个工具单独设置,也无需创建数据副本。

我是否需要为我的 MariaDB 数据库打开防火墙端口?

不。Query Streams 网络代理运行在您的网络内部,并打开一个单独的出站加密连接。它不会监听入站流量,无需 VPN,数据库也会保留其现有的防火墙规则。

查询流可以更改 MariaDB 中的数据吗?

不。代理在执行时强制执行只读模式——一次只执行一条语句,仅限 SELECT 及其相关语句。凭据保留在代理上,绝不会发送到查询流。

Query Streams 需要连接到 MariaDB 的什么组件?

可访问的主机、角色及其密码——代理程序自带驱动程序,因此无需在数据库上安装任何软件。端口:默认为 3306,可接受任何端口。加密:TLS 可选——默认关闭,除非您勾选,勾选后则为必需而非首选。接受 CA、客户端证书和密钥。凭据:数据库用户名和密码,保存在代理程序中。查询流永远不会接收这些信息。驱动程序:MySqlConnector 2.5.0,已捆绑——无需在服务器或客户端上安装任何软件。

我可以在同一个查询中将 MariaDB 连接到另一个数据库吗?

是的——这就是联合查询。一条语句可以同时引用 MariaDB 和其他连接,格式为 connection.schema.table。每个数据源只运行它能够处理的部分,并将结果流式传输回来;连接操作在中心进行,因此数据源之间不会相互连接,也不会进行任何复制或调度。所有部分(SELECT、WITH 和 EXPLAIN)都采用只读模式,并且单个数据源在单次查询中可以传输的数据量有限制。联合查询是计划功能;联合查询页面会显示当前的数据源和大小限制。

将 MariaDB 部署在工作发生的地方

安装代理,将其指向您的数据库,然后选择目标位置。

只读 仅限出站 凭证保留在代理人身上。