在 Azure Flexible PostgreSQL 上安装 pg_cron
Installation of pg_cron on Azure Flexible PostgeSQL
我正在尝试为 Azure PostgreSQL 灵活服务器安装 pg-cron 扩展。
根据此处找到的文档:
https://docs.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-extensions#postgres-13-extensions
pg_cron 是可用的扩展,但是当我尝试安装它时:
create schema cron_pg;
CREATE EXTENSION pg_cron SCHEMA cron_pg;
我得到的是:
SQL Error [0A000]: ERROR: extension "pg_cron" is not allow-listed for "azure_pg_admin" users in Azure Database for PostgreSQL
Hint: to see the full allow list of extensions, please run: "show azure.extensions;"
执行时:
show azure.extensions;
pg_cron 缺失:
address_standardizer,address_standardizer_data_us,amcheck,bloom,btree_gin,btree_gist,citext,cube,dblink,dict_int,dict_xsyn,earthdistance,fuzzystrmatch,hstore,intagg,intarray,isn,lo,ltree,pageinspect,pg_buffercache,pg_freespacemap,pg_partman,pg_prewarm,pg_stat_statements,pg_trgm,pg_visibility,pgaudit,pgcrypto,pgrowlocks,pglogical,pgstattuple,plpgsql,postgis,postgis_sfcgal,postgis_tiger_geocoder,postgis_topology,postgres_fdw,sslinfo,tablefunc,tsm_system_rows,tsm_system_time,unaccent,uuid-ossp,lo,postgis_raster
我做错了什么?
似乎 pg_cron 扩展已经在默认 'postgres' 数据库中默认启用。
我没有看到这个的原因是因为我没有使用默认的 'postgres' 数据库。我已经创建了我自己连接的数据库。
这实际上并没有解决我的问题,因为我无法跨数据库执行来自 pg_cron 的作业...
您可以通过更新作业 table.
中的 database
列作业来告诉 pg_cron 另一个数据库中的 运行 作业
例如:
UPDATE cron.job SET database = 'wordpress' WHERE jobname = 'wordpress-job';
我正在尝试为 Azure PostgreSQL 灵活服务器安装 pg-cron 扩展。 根据此处找到的文档: https://docs.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-extensions#postgres-13-extensions pg_cron 是可用的扩展,但是当我尝试安装它时:
create schema cron_pg;
CREATE EXTENSION pg_cron SCHEMA cron_pg;
我得到的是:
SQL Error [0A000]: ERROR: extension "pg_cron" is not allow-listed for "azure_pg_admin" users in Azure Database for PostgreSQL
Hint: to see the full allow list of extensions, please run: "show azure.extensions;"
执行时:
show azure.extensions;
pg_cron 缺失:
address_standardizer,address_standardizer_data_us,amcheck,bloom,btree_gin,btree_gist,citext,cube,dblink,dict_int,dict_xsyn,earthdistance,fuzzystrmatch,hstore,intagg,intarray,isn,lo,ltree,pageinspect,pg_buffercache,pg_freespacemap,pg_partman,pg_prewarm,pg_stat_statements,pg_trgm,pg_visibility,pgaudit,pgcrypto,pgrowlocks,pglogical,pgstattuple,plpgsql,postgis,postgis_sfcgal,postgis_tiger_geocoder,postgis_topology,postgres_fdw,sslinfo,tablefunc,tsm_system_rows,tsm_system_time,unaccent,uuid-ossp,lo,postgis_raster
我做错了什么?
似乎 pg_cron 扩展已经在默认 'postgres' 数据库中默认启用。 我没有看到这个的原因是因为我没有使用默认的 'postgres' 数据库。我已经创建了我自己连接的数据库。 这实际上并没有解决我的问题,因为我无法跨数据库执行来自 pg_cron 的作业...
您可以通过更新作业 table.
中的database
列作业来告诉 pg_cron 另一个数据库中的 运行 作业
例如:
UPDATE cron.job SET database = 'wordpress' WHERE jobname = 'wordpress-job';