跳转到主要内容
为 Prometheus 抓取 MySQL 指标通常意味着运行一个单独的导出器进程, 由它登录并轮询。prometheus_exporter 改为从服务器内部提供 /metrics 端点,因此少了一个需要部署、认证和保持运行的进程。
此扩展由第三方编写和维护。VillageSQL 不构建、测试或发布它, 下面的描述遵循维护者自己的文档。在依赖它之前,请先阅读该文档。

安装

存储库默认分支上的代码无法针对当前 SDK 构建:它调用了 make_sys_var_bool 和 make_status_var_int,这两个函数已于 2026 年 5 月 从 SDK 中移除。移植后的代码在未合并的拉取请求 #4 上, 该代码声明了预览能力,因此加载它的服务器必须以 --vsql_allow_preview_extensions=ON 启动。
针对 VillageSQL 构建树(VillageSQL_BUILD_DIR)从该分支构建它,将 .veb 文件复制到服务器的 veb_dir 中,然后安装它:

新增内容

它添加了一个 HTTP 监听器和三个设置,不添加 SQL 函数。 导出五类指标,每类按其来源命名。 导出器还通过 requests_total、scrape_duration_us 和 errors_total 报告自身状态。

示例

维护者的快速入门会启用它并选择一个端口:
然后 Prometheus 抓取 http://127.0.0.1:9104/metrics。如果另一个进程(例如独立的 mysqld_exporter)已经占用了端口 9104,enabled 仍会显示 ON,但没有任何进程响应,因此请用 curl 检查该端点。
除非您更改设置,否则监听器绑定到 localhost,这是安全的选择。 指标描述了您的流量和配置,因此在把端口移出环回地址之前, 请先把它放在某种认证机制之后。

另请参阅