搜索快捷键 cmd + k | ctrl + k
社区扩展

欢迎阅读 DuckDB 社区扩展文档。

本网站包含所有针对 DuckDB 社区贡献扩展的特定文档。

DuckDB 是一款分析型进程内 SQL 数据库管理系统,相关文档请参考 DuckDB 文档网站

“社区”意味着这些扩展是由外部贡献者创建的,不由 DuckDB Labs 维护。

扩展是为 DuckDB 打包额外功能的首选方式。通用扩展记录在 DuckDB 核心文档中。

如何使用社区扩展

要安装并加载社区扩展(例如 quack 演示扩展),只需运行

INSTALL quack FROM community;
LOAD quack;

quack 扩展现已加载并可供使用

SELECT quack('world');

什么是社区扩展?

社区扩展是那些不由 DuckDB 团队维护的 DuckDB 扩展

它们与由 DuckDB 团队维护的核心扩展(Core Extensions)不同,也不同于那些密钥为空或无效的未签名扩展。

社区扩展通过社区扩展端点 http(s)://community-extensions.duckdb.org 进行分发,在执行 INSTALLUPDATE EXTENSIONS 时会从该地址获取。

社区扩展的提交和构建流程通过 社区扩展仓库 进行。

请查看开发页面了解如何贡献扩展。

DuckDB 社区扩展在概念上类似于 Homebrew 等包管理器,代码保留在您自己的仓库中,但构建和分发是集中式的。

使用社区扩展的安全注意事项

DuckDB 社区扩展经过签名,因此在执行 LOAD 时会进行检查,以证明给定的扩展是由社区扩展 CI 构建的。

有关扩展及其使用方法的更多信息,请查看“保护扩展”“安装扩展”页面。

特别是如果您希望禁止 LOAD 社区扩展,请运行

SET allow_community_extensions = false;

这将禁用后续加载任何使用社区扩展密钥签名的扩展,并锁定 allow_community_extensions 配置。