如何使用 Azure Database for PostgreSQL 的 PostgreSQL 扩展
适用于: Azure Database for PostgreSQL 灵活服务器
Azure Database for PostgreSQL 灵活服务器让你可以使用扩展来扩展数据库功能的能力。 扩展在单个包中捆绑多个相关 SQL 对象,可以使用命令在数据库中加载或删除该包。 将包加载到数据库中后,扩展会如同内置功能一样运行。
允许扩展
在 Azure Database for PostgreSQL 灵活服务器中安装扩展之前,必须允许列出这些扩展以供使用。
使用 Azure 门户:
加载库
shared_preload_libraries
是一个服务器配置参数,用于确定 Azure Database for PostgreSQL 灵活服务器启动时必须加载哪些库。 必须通过此参数加载使用共享内存的所有库。 如果需要将扩展添加到共享预加载库,请执行以下步骤:
使用 Azure 门户:
选择 Azure Database for PostgreSQL 灵活服务器实例。
从资源菜单的“设置”部分下,选择“服务器参数”。
搜索
shared_preload_libraries
参数。选择要添加的库。
可以通过 CLI 参数集命令设置 shared_preload_libraries
。
az postgres flexible-server parameter set --resource-group <resource_group> --server-name <server> --subscription <subscription_id> --name shared_preload_libraries --value <extension_name>,<extension_name>
创建扩展
将扩展添加到允许列表并加载它们后,它们必须安装在要使用的每个数据库中。
若要创建扩展,用户必须是
azure_pg_admin
角色的成员。azure_pg_admin
角色的成员可以向其他用户授予创建扩展的权限。运行 CREATE EXTENSION 命令以安装特定扩展。 此命令将打包的对象加载到数据库中。
注意
Azure Database for PostgreSQL 灵活服务器中提供的第三方扩展是开源许可代码。 我们不提供任何具有高级或专有许可模型的第三方扩展或扩展版本。
Azure Database for PostgreSQL 灵活服务器实例支持一部分重要 PostgreSQL 扩展,如下表中所列。 还可以通过运行 SHOW azure.extensions;
获取此信息。 Azure Database for PostgreSQL 灵活服务器不支持本文档中未列出的扩展。 不能在 Azure Database for PostgreSQL 灵活服务器中创建或加载你的扩展。
升级 PostgreSQL 扩展
简单的命令允许就地升级数据库扩展。 此功能使客户能够自动将其第三方扩展更新到最新版本,无需手动操作即可让系统始终是最新的和安全的。
更新扩展
若要将已安装的扩展更新到 Azure 支持的最新发布版本,请使用以下 SQL 命令:
ALTER EXTENSION <extension_name> UPDATE;
此命令允许用户手动升级到 Azure 批准的最新版本,简化了数据库扩展的管理,增强了兼容性和安全性。
已安装的扩展
若要列出当前安装在数据库上的扩展,请使用以下 SQL 命令:
SELECT * FROM pg_extension;
查看可用扩展的列表。
限制
虽然更新扩展很简单,但也存在一定的限制:
特定版本选择:此命令不支持更新到扩展的中间版本。
- 它会不断更新最新的可用版本。
降级:不支持将扩展降级到以前的版本。 如果需要降级,则可能需要支持部门的帮助,具体取决于以前的版本的可用性。