pgagent
PostgreSQL任务调度工具,与PGADMIN配合使用
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
pgagent | 4.2.3 | ADMIN | PostgreSQL | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 5880 | pgagent | 否 | 是 | 否 | 是 | 否 | 否 | - |
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PGDG | 4.2.3 | 1817161514 | pgagent | - |
| RPM | PGDG | 4.2.3 | 1817161514 | pgagent_$v | - |
| DEB | PGDG | 4.2.3 | 1817161514 | pgagent | - |
安装
您可以直接安装 pgagent 扩展包的预置二进制包,首先确保 PGDG 仓库已经添加并启用:
BASH
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
BASH
pig
BASH
dnf
BASH
apt
BASH
创建扩展:
SQL
用法
pgAgent 是 PostgreSQL 的作业调度代理,能够在复杂的调度计划上运行多步骤的批处理/Shell 脚本和 SQL 任务。它以守护进程方式运行,并将作业定义存储在数据库中。
核心概念
- 作业(Job):包含一个或多个步骤和调度计划的可调度命名单元
- 步骤(Step):作业中的单个操作(SQL 脚本或 OS 批处理/Shell 命令)
- 调度(Schedule):定义作业何时运行,具有类似 cron 的灵活性
通过 SQL 管理作业
pgAgent 将其配置存储在 pgagent 模式中。作业可以通过 pgAdmin 或直接通过 SQL 管理。
SQL
步骤类型
| 类型 | 描述 |
|---|---|
s | 针对数据库执行的 SQL 脚本 |
b | 在操作系统上执行的批处理/Shell 命令 |
调度字段
| 字段 | 描述 |
|---|---|
jscstart / jscend | 调度的有效日期范围 |
jscminutes | 布尔数组[60]:在哪些分钟运行 |
jschours | 布尔数组[24]:在哪些小时运行 |
jscweekdays | 布尔数组[7]:在一周的哪几天运行 |
jscmonthdays | 布尔数组[32]:在一月的哪几天运行 |
jscmonths | 布尔数组[12]:在哪些月份运行 |
安全性
pgAgent 守护进程使用存储的连接字符串连接到数据库。只有数据库超级用户或被授予 pgagent 模式表适当权限的用户才能管理作业。