婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > PostgreSQL 實(shí)現(xiàn)定時(shí)job執(zhí)行(pgAgent)

PostgreSQL 實(shí)現(xiàn)定時(shí)job執(zhí)行(pgAgent)

熱門標(biāo)簽:移動(dòng)外呼系統(tǒng)模擬題 地圖標(biāo)注要花多少錢 電話機(jī)器人怎么換人工座席 江蘇400電話辦理官方 400電話申請(qǐng)客服 天津開發(fā)區(qū)地圖標(biāo)注app 廣州電銷機(jī)器人公司招聘 濟(jì)南外呼網(wǎng)絡(luò)電話線路 電銷機(jī)器人能補(bǔ)救房產(chǎn)中介嗎

PostgreSQL中定時(shí)job執(zhí)行

業(yè)務(wù)分析

近期項(xiàng)目需要定期清理數(shù)據(jù)庫中的多余數(shù)據(jù),即每月1號(hào)刪除指定表中一年以上的數(shù)據(jù)。

初步分析這種定時(shí)job可以使用一下兩種技術(shù)實(shí)現(xiàn):

Linux的crontab功能

pgadmin的pgAgent功能

為了避免數(shù)據(jù)庫系統(tǒng)和操作系統(tǒng)的綁定,最后決定在數(shù)據(jù)庫層面實(shí)現(xiàn)自動(dòng)清理功能,即使用pgAgent功能

介紹

pgAgent是pgAdmin III工具中的一個(gè)插件,它在pgAdmin III v1.4版本中引用。

主要用于PostgreSQL的作業(yè)調(diào)度代理,能夠在復(fù)雜的時(shí)間表上運(yùn)行多步批處理shell和SQL任務(wù)。

需要注意的是,pgAgent需要一些數(shù)據(jù)庫表和其他對(duì)象的支持,因此需要先安裝pgAgent數(shù)據(jù)庫。

環(huán)境

PostgreSQL:

操作系統(tǒng):CentOS Linux release 7.3.1611 (Core)
數(shù)據(jù)庫系統(tǒng): PostgreSQL 9.5.8
IP: 192.168.230.134
port: 5432

安裝

安裝pgAdmin III

yum install pgadmin3_95.x86_64 

輸入:

[root@localhost ~]# yum install pgadmin3_95.x86_64 
Loaded plugins: fastestmirror, langpacks
base                               | 3.6 kB 00:00:00   
epel/x86_64/metalink                       | 6.4 kB 00:00:00   
extras                              | 3.4 kB 00:00:00   
pgdg95                              | 4.1 kB 00:00:00   
updates                             | 3.4 kB 00:00:00   
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * epel: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.163.com
 * updates: mirrors.163.com
Resolving Dependencies
--> Running transaction check
---> Package pgadmin3_95.x86_64 0:1.22.1-1.rhel7 will be installed
--> Processing Dependency: wxGTK for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_xrc-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_stc-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_html-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_core-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_aui-2.8.so.0(WXU_2.8.5)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_aui-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_adv-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu_xml-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu_net-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu-2.8.so.0(WXU_2.8.5)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu-2.8.so.0(WXU_2.8)(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_xrc-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_stc-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_html-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_core-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_aui-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_gtk2u_adv-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu_xml-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu_net-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Processing Dependency: libwx_baseu-2.8.so.0()(64bit) for package: pgadmin3_95-1.22.1-1.rhel7.x86_64
--> Running transaction check
---> Package wxBase.x86_64 0:2.8.12-20.el7 will be installed
---> Package wxGTK.x86_64 0:2.8.12-20.el7 will be installed
--> Processing Dependency: libSDL-1.2.so.0()(64bit) for package: wxGTK-2.8.12-20.el7.x86_64
--> Running transaction check
---> Package SDL.x86_64 0:1.2.15-14.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================
 Package        Arch       Version         Repository    Size
========================================================================================
Installing:
 pgadmin3_95      x86_64      1.22.1-1.rhel7      pgdg95      3.2 M
Installing for dependencies:
 SDL          x86_64      1.2.15-14.el7      base       204 k
 wxBase        x86_64      2.8.12-20.el7      epel       588 k
 wxGTK         x86_64      2.8.12-20.el7      epel       2.9 M

Transaction Summary
========================================================================================
Install 1 Package (+3 Dependent packages)

Total download size: 6.9 M
Installed size: 27 M
Is this ok [y/d/N]: y
Downloading packages:
(1/4): SDL-1.2.15-14.el7.x86_64.rpm               | 204 kB 00:00:00   
(2/4): wxBase-2.8.12-20.el7.x86_64.rpm              | 588 kB 00:00:00   
(3/4): wxGTK-2.8.12-20.el7.x86_64.rpm              | 2.9 MB 00:00:01   
(4/4): pgadmin3_95-1.22.1-1.rhel7.x86_64.rpm           | 3.2 MB 00:00:48   
----------------------------------------------------------------------------------------
Total                           147 kB/s | 6.9 MB 00:48   
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 Installing : wxBase-2.8.12-20.el7.x86_64                     1/4 
 Installing : SDL-1.2.15-14.el7.x86_64                       2/4 
 Installing : wxGTK-2.8.12-20.el7.x86_64                      3/4 
 Installing : pgadmin3_95-1.22.1-1.rhel7.x86_64                  4/4 
 Verifying : SDL-1.2.15-14.el7.x86_64                       1/4 
 Verifying : wxGTK-2.8.12-20.el7.x86_64                      2/4 
 Verifying : wxBase-2.8.12-20.el7.x86_64                     3/4 
 Verifying : pgadmin3_95-1.22.1-1.rhel7.x86_64                  4/4 

Installed:
 pgadmin3_95.x86_64 0:1.22.1-1.rhel7                          

Dependency Installed:
 SDL.x86_64 0:1.2.15-14.el7 wxBase.x86_64 0:2.8.12-20.el7 wxGTK.x86_64 0:2.8.12-20.el7

Complete!

安裝pgAgent

yum install pgagent_95

輸入:

[root@localhost ~]# yum install pgagent_95
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * epel: mirrors.ustc.edu.cn
 * extras: mirrors.163.com
 * updates: mirrors.163.com
Resolving Dependencies
--> Running transaction check
---> Package pgagent_95.x86_64 0:3.4.0-9.rhel7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================
 Package       Arch       Version          Repository    Size
========================================================================================
Installing:
 pgagent_95      x86_64      3.4.0-9.rhel7       pgdg95      42 k

Transaction Summary
========================================================================================
Install 1 Package

Total download size: 42 k
Installed size: 151 k
Is this ok [y/d/N]: y
Downloading packages:
pgagent_95-3.4.0-9.rhel7.x86_64.rpm               | 42 kB 00:00:02   
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 Installing : pgagent_95-3.4.0-9.rhel7.x86_64                   1/1 
 Verifying : pgagent_95-3.4.0-9.rhel7.x86_64                   1/1 

Installed:
 pgagent_95.x86_64 0:3.4.0-9.rhel7                           

Complete!

在數(shù)據(jù)庫上配置pgAgent

找到pgagent.sql和pgagent_upgrade.sql文件路徑,并在需要job功能的數(shù)據(jù)庫上執(zhí)行

將會(huì)在數(shù)據(jù)庫中創(chuàng)建一個(gè)pgagent模式,并創(chuàng)建相應(yīng)的功能表和函數(shù)

psql -U postgres
postgres=# \i /usr/share/pgagent_95-3.4.0/pgagent.sql
postgres=# \i /usr/share/pgagent_95-3.4.0/pgagent_upgrade.sql
postgres=# \q

輸入:

[root@localhost pgagent_95-3.4.0]# psql -U postgres
psql (9.5.9)
Type "help" for help.

postgres=# \i /usr/share/pgagent_95-3.4.0/pgagent.sql
BEGIN
CREATE SCHEMA
COMMENT
CREATE TABLE
COMMENT
CREATE TABLE
CREATE INDEX
COMMENT
INSERT 0 1
INSERT 0 1
INSERT 0 1
INSERT 0 1
INSERT 0 1
CREATE TABLE
COMMENT
COMMENT
CREATE TABLE
CREATE INDEX
COMMENT
COMMENT
COMMENT
CREATE TABLE
CREATE INDEX
COMMENT
CREATE TABLE
CREATE INDEX
CREATE INDEX
COMMENT
CREATE TABLE
CREATE INDEX
COMMENT
COMMENT
CREATE TABLE
CREATE INDEX
COMMENT
COMMENT
COMMENT
CREATE FUNCTION
CREATE FUNCTION
COMMENT
CREATE FUNCTION
COMMENT
CREATE FUNCTION
COMMENT
CREATE TRIGGER
COMMENT
CREATE FUNCTION
COMMENT
CREATE TRIGGER
COMMENT
CREATE FUNCTION
COMMENT
CREATE TRIGGER
COMMENT
COMMIT
postgres=# \i /usr/share/pgagent_95-3.4.0/pgagent_upgrade.sql
CREATE FUNCTION
CREATE FUNCTION
COMMENT
psql:/usr/share/pgagent_95-3.4.0/pgagent_upgrade.sql:49: ERROR: column "jstconnstr" of relation "pga_jobstep" already exists
ALTER TABLE
ALTER TABLE
postgres=# \q

如果數(shù)據(jù)庫滿足以下條件:

* PostgreSQL 版本高于9.1

* pgAgent 版本高于3.4.0

可使用簡(jiǎn)易安裝模式:

[root@localhost pgagent_95-3.4.0]# psql -U postgres
psql (9.5.9)
Type "help" for help.

postgres=# CREATE EXTENSION pgagent;

效果相同

啟動(dòng)pgAgent守護(hù)程序

語法:

pgagent_95 [options] connect-string>
options:
-f run in the foreground (do not detach from the terminal)
-t poll time interval in seconds (default 10)>
-r retry period after connection abort in seconds (>=10, default 30)>
-s log file (messages are logged to STDOUT if not specified>
-l logging verbosity (ERROR=0, WARNING=1, DEBUG=2, default 0)>

實(shí)例:

[root@localhost pgagent_95-3.4.0]# pgagent_95 hostaddr=192.168.230.134 dbname=postgres user=postgres password=oracle

執(zhí)行計(jì)劃創(chuàng)建

使用pgadmin III工具連接目標(biāo)庫(可以使用其他機(jī)器遠(yuǎn)程連接目標(biāo)庫)

配置如下:

進(jìn)入pgadmin后可看到作業(yè)狀態(tài),如下圖所示:

創(chuàng)建作業(yè)date_delete_new

然后在date_delete_new作業(yè)中添加執(zhí)行計(jì)劃和步驟

創(chuàng)建計(jì)劃delete_date_new

計(jì)劃其實(shí)就是作業(yè)的執(zhí)行時(shí)間表,可以在其中設(shè)置作業(yè)的運(yùn)行時(shí)間,最小單位為min,設(shè)置方式與linux的cron控件類似

本次的業(yè)務(wù)要求是每月1號(hào)執(zhí)行刪除操作,顧只需設(shè)置每月一日?qǐng)?zhí)行即可:

新建計(jì)劃:

設(shè)置日期為每月的1號(hào)

設(shè)置時(shí)間為00點(diǎn)00分

創(chuàng)建步驟delete_date_new

步驟是可以執(zhí)行的SQL腳本或shell腳本,當(dāng)計(jì)劃條件觸發(fā)時(shí),作業(yè)的每個(gè)步驟將依次以字母數(shù)字名稱順序運(yùn)行

本次的業(yè)務(wù)要求是刪除表中一年以前的數(shù)據(jù),以test表為例

新建步驟:

需要指定操作的數(shù)據(jù)庫(postgres)

步驟1

在定義中寫入所要執(zhí)行的腳本,如:

DELETE FROM "test"."test" 
where time  CURRENT_DATE-('1 year')::INTERVAL;

步驟2

到此執(zhí)行計(jì)劃創(chuàng)建完成

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • PostgreSQL查看正在執(zhí)行的任務(wù)并強(qiáng)制結(jié)束的操作方法
  • 解決PostgreSQL 執(zhí)行超時(shí)的情況
  • 在postgresql中通過命令行執(zhí)行sql文件
  • Postgresql的pl/pgql使用操作--將多條執(zhí)行語句作為一個(gè)事務(wù)
  • Postgresql psql文件執(zhí)行與批處理多個(gè)sql文件操作
  • 在postgresql中結(jié)束掉正在執(zhí)行的SQL語句操作
  • PostgreSQL 實(shí)現(xiàn)sql放入文件批量執(zhí)行

標(biāo)簽:榆林 昭通 寶雞 濮陽 杭州 溫州 海西 辛集

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PostgreSQL 實(shí)現(xiàn)定時(shí)job執(zhí)行(pgAgent)》,本文關(guān)鍵詞  PostgreSQL,實(shí)現(xiàn),定時(shí),job,執(zhí)行,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PostgreSQL 實(shí)現(xiàn)定時(shí)job執(zhí)行(pgAgent)》相關(guān)的同類信息!
  • 本頁收集關(guān)于PostgreSQL 實(shí)現(xiàn)定時(shí)job執(zhí)行(pgAgent)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    韩国v欧美v日本v亚洲v| 成人av动漫在线| 亚洲老司机在线| 亚洲欧美一区二区久久| 国产成人在线视频免费播放| 中文av一区特黄| 国产一区二区剧情av在线| 中文一区在线播放| 欧美精品久久99久久在免费线| 精品综合免费视频观看| 亚洲国产另类精品专区| 国产蜜臀97一区二区三区| 91在线国内视频| 中文字幕亚洲一区二区av在线 | 国产精品亚洲一区二区三区在线| 最新国产成人在线观看| 中文字幕中文字幕一区二区 | 欧美视频一区二区三区四区 | 国产精品99精品久久免费| 亚洲综合在线第一页| 亚洲三级电影网站| 日韩中文字幕麻豆| 五月婷婷另类国产| 亚洲精品日产精品乱码不卡| 亚洲国产高清在线| 国产精品久久二区二区| 中文字幕不卡的av| 一区二区三区在线视频免费观看| 自拍偷在线精品自拍偷无码专区| 国产欧美一区二区三区在线看蜜臀| 国产日产欧美一区| 亚洲制服丝袜一区| 久久精品国产亚洲一区二区三区| 国内精品免费在线观看| 99久久精品情趣| 91精品国产美女浴室洗澡无遮挡| 欧美一区日韩一区| 国产精品嫩草99a| 日韩中文字幕麻豆| 91啦中文在线观看| 欧美性一区二区| www.日韩精品| 欧美xfplay| 亚洲亚洲精品在线观看| 久久国产精品色婷婷| 欧美伊人久久久久久久久影院 | 久草在线在线精品观看| 欧美影视一区在线| 日韩一区二区在线免费观看| 亚洲丝袜自拍清纯另类| 福利视频网站一区二区三区| 91精品国产福利| 亚洲国产一区二区三区| 国产a久久麻豆| 久久久久久亚洲综合影院红桃| 亚洲成在人线在线播放| 91丨porny丨户外露出| 亚洲欧美国产三级| 国产精品一区二区三区乱码| 欧美精品123区| 日韩精品午夜视频| 日韩欧美一区在线| 日韩不卡在线观看日韩不卡视频| 欧美精品亚洲二区| 蜜桃视频在线一区| 欧美精品一区二区三区高清aⅴ| 午夜一区二区三区视频| 免费成人在线视频观看| 色呦呦国产精品| 亚洲成人动漫av| 欧美不卡一区二区三区四区| 奇米一区二区三区| 久久婷婷久久一区二区三区| 国产精品一区二区视频| 亚洲欧美色综合| 欧美日韩一区二区三区视频| 亚洲一区成人在线| 欧美成人精精品一区二区频| 国产99精品国产| 亚洲一区国产视频| 国产午夜一区二区三区| 在线一区二区三区做爰视频网站| 欧美va亚洲va| 91久久一区二区| 亚洲人被黑人高潮完整版| 日韩一区二区麻豆国产| 91麻豆免费看| 国产福利91精品| 狠狠网亚洲精品| 日日摸夜夜添夜夜添精品视频 | 久久久久国产精品人| 欧美一区二区三区四区五区| 成人激情综合网站| 日本aⅴ免费视频一区二区三区| 久久夜色精品国产噜噜av| 国产不卡在线视频| 精品一区二区三区免费| 亚洲综合成人在线| 自拍偷在线精品自拍偷无码专区| 欧美精品一区二区高清在线观看| 色综合久久综合中文综合网| 国产69精品久久99不卡| 国产一区二三区| 日韩欧美久久久| 91精品在线免费| www成人在线观看| 欧美激情一区二区在线| 国产精品美日韩| 亚洲欧美日韩电影| 日韩国产精品大片| 麻豆freexxxx性91精品| 黑人精品欧美一区二区蜜桃| 亚洲视频资源在线| 亚洲一二三专区| 91在线视频免费观看| 在线观看免费一区| 在线综合视频播放| 国产女同互慰高潮91漫画| 一区二区三区日韩精品| 水蜜桃久久夜色精品一区的特点| 亚洲成人一区二区| 国产精品自产自拍| 成人黄色a**站在线观看| 欧美人成免费网站| 久久久蜜桃精品| 青青草国产精品亚洲专区无| 青青国产91久久久久久| 奇米精品一区二区三区四区| 综合av第一页| 在线观看视频一区二区| 狠狠色伊人亚洲综合成人| 国产欧美一区二区精品久导航 | 在线播放欧美女士性生活| 日韩电影一区二区三区| 91视频免费播放| 国产三级精品在线| 久久成人免费网| 久久先锋资源网| 国产福利一区二区| 国产性做久久久久久| 成人精品国产福利| 精品精品欲导航| 国产精品网站在线播放| 在线亚洲一区观看| 中文字幕亚洲区| 99精品国产99久久久久久白柏| 中文av字幕一区| 色屁屁一区二区| 亚洲五码中文字幕| 久久精品视频一区二区三区| 国产a视频精品免费观看| 91免费观看在线| 麻豆精品久久精品色综合| 久久精品免视看| 一本色道久久加勒比精品| 视频在线在亚洲| 国产精品嫩草久久久久| 91麻豆精品国产91久久久久久久久 | 亚洲天天做日日做天天谢日日欢| 91猫先生在线| 国产91露脸合集magnet| 蜜桃av噜噜一区| 亚欧色一区w666天堂| 亚洲精品乱码久久久久| 日本一区二区免费在线| 久久众筹精品私拍模特| 欧美日韩国产a| 91蜜桃网址入口| k8久久久一区二区三区| 国产福利一区二区三区视频在线| 麻豆国产一区二区| 青娱乐精品视频| 日韩va亚洲va欧美va久久| 亚洲国产欧美日韩另类综合 | 99精品视频一区| 国产一区二区三区高清播放| 看国产成人h片视频| 日韩av成人高清| 麻豆国产精品一区二区三区| 精品一区二区免费看| 国产福利一区二区三区视频| 成人av资源站| 日韩一级黄色大片| 精品国产区一区| 国产精品网站一区| 午夜欧美在线一二页| 蜜桃一区二区三区四区| 99热国产精品| 91精品国产91久久久久久一区二区| 欧美v亚洲v综合ⅴ国产v| 亚洲色图在线播放| 精品一区二区在线观看| 一本到一区二区三区| 国产亚洲一区二区三区四区| 亚洲特级片在线| 国产在线播放一区二区三区| 91免费观看在线| 亚洲天堂免费在线观看视频| 国内精品久久久久影院一蜜桃| 成人精品一区二区三区四区|