pg安装pgagent插件以创建job

一 下载

官方下载地址Download

二 安装

2.1 安装cmake

执行cmake -version查看版本,如果能看到版本信息,就不用重复安装了。

cd /usr/local/

tar xvf cmake-3.16.5-Linux-x86_64.tar.gz
cd cmake-3.16.5-Linux-x86_64/bin
vi /etc/profile

在最后新增一行:

export PATH=$PATH:/usr/local/cmake-3.16.5-Linux-x86_64/bin/

#使修改生效

source /etc/profile

2.2 wxWidgets的安装

执行wx-config --version查看版本,如果能看到版本信息,就不用重复安装了。

yum install gtk* -y

yum install gcc-c++ -y

cd /usr/local/

tar xjvf wxWidgets-3.1.3.tar.bz2

/*

wxWidgets-3.1.3.tar.bz2下载地址:

https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.3/wxWidgets-3.1.3.tar.bz2

*/

cd wxWidgets-3.1.3

./configure --enable-shared=no --enable-unicode=yes --prefix=/usr/local/wxWidgets-3.1.3

make

make install

/*

假如执行make install报错:

[root@localhost wxWidgets-3.1.3]# make install

mkdir -p /usr/local/wxWidgets-3.1.3/lib

/usr/bin/install -c -m 644 /usr/local/wxWidgets-3.1.3/lib/libwxregexu-3.1.a /usr/local/wxWidgets-3.1.3/lib

/usr/bin/install: "/usr/local/wxWidgets-3.1.3/lib/libwxregexu-3.1.a" 与"/usr/local/wxWidgets-3.1.3/lib/libwxregexu-3.1.a" 为同一文件

make: *** [install_wxregex] 错误 1

发现虽报了这个错,但是不影响后面pgagent的安装,可跳过这个报错继续往下进行。

*/

# 设置环境变量

cat >>/etc/profile <<EOF

PATH=$PATH:$HOME/bin:/usr/local/wxWidgets-3.1.3/bin

export LD_LIBRARY_PATH=/usr/local/wxWidgets-3.1.3/lib:$LD_LIBRARY_PATH

EOF

source /etc/profile

#查看wxWidgets版本

/usr/local/wxWidgets-3.1.3/wx-config --version

2.3 安装pgagent

yum install boost*

cd /usr/local/

tar xvf pgAgent-4.0.0-Source.tar.gz

cd pgAgent-4.0.0-Source

cmake ./

/*

假如这里报错:

CMake Error at cmake/FindBoost.cmake:2044 (message):

  Unable to find the requested Boost libraries.

  Unable to find the Boost header files.  Please set BOOST_ROOT to the root

  directory containing Boost or BOOST_INCLUDEDIR to the directory containing

  Boost's headers.

Call Stack (most recent call first):

  CMakeLists.txt:112 (FIND_PACKAGE)

CMake Error at CMakeLists.txt:118 (MESSAGE):

  Boost library not found.

说明没装boost,需要yum install boost*

假如报错:

CMake Error at cmake/FindPG.cmake:131 (MESSAGE):

  No PostgreSQL installation could be found.

Call Stack (most recent call first):

  CMakeLists.txt:98 (FIND_PACKAGE)

-- Configuring incomplete, errors occurred!

See also "/usr/local/pgAgent-4.0.0-Source/CMakeFiles/CMakeOutput.log".

则说明CMake 无法找到已安装的 PostgreSQL,需要在cmake的时候指定pg安装路径(可以使用which psql来查看pg安装路径),示例:

cmake -DCMAKE_PREFIX_PATH=/usr/local/pgsql12.11

*/

make

/*

假如make的时候报错:

/usr/local/pgAgent-4.0.0-Source/include/connection.h:16:22: fatal error: libpq-fe.h: No such file or directory

解决办法:

yum install postgresql-devel

*/

make install

三 安装后配置

3.1 create extension

#可以在pg_available_extensions里看到pgagent插件了

select * from pg_available_extensions where name like '%agent%';

#安装该插件

create extension pgagent;

#可以在pg_extension里看到pgagent插件了

3.2 启动pgAgent

su - postgres

pgagent  hostaddr=127.0.0.1 port=15432 dbname=postgres user=postgres  -s /data/server/pgdata/log/pgagent.log -l 1

参数介绍:

-l <logging verbosity (ERROR=0, WARNING=1, DEBUG=2, default 0)>

观察/data/server/pgdata/log/pgagent.log日志是否有报错。如果有报错的话,pgagent进程会自动退出。

/*

假如报错:

Fri Nov 10 09:38:52 2023 WARNING: Failed to create primary connection: FATAL:  Ident authentication failed for user "postgres"

Fri Nov 10 09:38:52 2023 WARNING: Couldn't create the primary connection [Attempt #1]

su - postgres

vi .pgpass

新增如下内容:

*:5432:*:postgres:postgres用户的密码

#授权

chmod 0600 .pgpass

重启pgagent再观察下是否还报错了

*/

四 创建job

Pgadmin安装可参考https://blog.csdn.net/Hemameba/article/details/131184969

……

本篇文章参考自:

pgAgent编译安装及配置(详细) - 墨天轮

pgagent源码安装 - 简书

Installing pgAgent — pgAdmin 4 7.8 documentation

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用docker-compose安装postgreSQLpgadmin以及yum安装pgagent的步骤: 1. 创建一个docker-compose.yml文件,内容如下: ```yaml version: '3' services: db: image: postgres restart: always environment: POSTGRES_PASSWORD: example ports: - "5432:5432" volumes: - ./data:/var/lib/postgresql/data pgadmin: image: dpage/pgadmin4 restart: always environment: PGADMIN_DEFAULT_EMAIL: [email protected] PGADMIN_DEFAULT_PASSWORD: admin ports: - "5050:80" pgagent: build: ./pgagent restart: always depends_on: - db environment: PGAGENT_HOST: db PGAGENT_PORT: 5432 PGAGENT_USER: postgres PGAGENT_PASSWORD: example ``` 其中,db服务使用postgres镜像创建一个postgreSQL数据库,pgadmin服务使用dpage/pgadmin4镜像创建pgadmin,pgagent服务使用Dockerfile创建pgagent。 2. 创建一个Dockerfile文件,内容如下: ```dockerfile FROM centos:7 RUN yum -y update && \ yum -y install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm && \ yum -y install postgresql96-contrib && \ yum -y install https://download.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-redhat-repo-1-1.noarch.rpm && \ yum -y install pgagent CMD ["pgagent", "-f", "-l", "/var/log/pgagent.log"] ``` 这个Dockerfile文件使用centos:7镜像作为基础镜像,然后安装postgresql96-contrib、pgadmin4和pgagent。 3. 在与docker-compose.yml文件相同的目录下创建一个pgagent目录,并在该目录下创建一个空的pgagent.log文件。 4. 在终端中进入docker-compose.yml文件所在的目录,运行以下命令启动服务: ```shell docker-compose up -d ``` 5. 访问http://localhost:5050/,使用刚才设置的PGADMIN_DEFAULT_EMAIL和PGADMIN_DEFAULT_PASSWORD登录pgadmin。 6. 在pgadmin中添加一个postgreSQL服务器,输入以下信息: ``` Name: 任意名称 Host: db Port: 5432 Maintenance database: postgres Username: postgres Password: example ``` 7. 在pgadmin中创建一个pgagent任务,输入以下信息: ``` Name: 任意名称 Enabled: 勾选 Description: 任意描述 Host: db Port: 5432 Database: postgres Username: postgres Password: example ``` 8. 在pgadmin中为pgagent任务添加一个步骤,例如执行一个SQL查询,然后设置该步骤的调度时间。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值