首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取可在PostgreSQL中为执行而创建的每个实例的最大作业奴隶数

获取可在PostgreSQL中为执行而创建的每个实例的最大作业奴隶数
EN

Stack Overflow用户
提问于 2022-07-15 15:23:13
回答 1查看 46关注 0票数 0

我正在将oracle数据库迁移到postgresql。

当迁移在oracle端使用下面的查询时就知道了。

Oracle查询:

代码语言:javascript
复制
SELECT
TRIM(value) AS val
FROM v$parameter
WHERE name = 'job_queue_processes';

我只想知道如何才能获得在postgresql端为执行而创建的每个实例的最大工作奴隶数。

到目前为止,我已经创建了pg_cron扩展并创建了所需的工作。但是其中一个函数是在oracle中使用上面的查询,所以我只想把它转换成postgresql。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-15 17:52:53

文档通常是一个很好的信息来源。

注意:默认情况下,pg_cron使用libpq打开到本地数据库的新连接。

在这种情况下,没有具体的限制。它将以其他用户连接受限的方式受到限制。主要是通过max_connections,但可能会从特定用户或特定数据库的ALTER命令中降低。如果您希望单独限制cron的连接,您可以为cron专门创建一个用户,然后授予它将代表的其他角色的用户权限。我不知道如果达到限制pg_cron会做什么,它是否优雅地处理它?

或者,可以将pg_cron配置为使用后台工作人员。在这种情况下,并发作业的数量受到max_worker_processes设置的限制,因此您可能需要提高这个值。

请注意,工作人员的最大数量可能必须与并行执行工作人员共享,或者与其他扩展共享。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72996231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档