無(wú)論你實(shí)在A數(shù)據(jù)庫(kù)中創(chuàng)建B數(shù)據(jù)庫(kù)的連接 ,還是在B數(shù)據(jù)庫(kù)中創(chuàng)建A數(shù)據(jù)庫(kù)的連接 從本質(zhì)上是一樣的,都是為了打通2個(gè)數(shù)據(jù)庫(kù),實(shí)現(xiàn)數(shù)據(jù)互通
1.2.1 在A數(shù)據(jù)庫(kù)創(chuàng)建b數(shù)據(jù)庫(kù)的連接
因?yàn)橥獠勘硎菍?shí)時(shí)的 在數(shù)據(jù)庫(kù)a中更改了 外部表tb_fdw_b1 的數(shù)據(jù) ,數(shù)據(jù)庫(kù)B中的b1表中的數(shù)據(jù)也隨之改變 達(dá)成了我們一開(kāi)始的目的
每天都需要執(zhí)行顯然不符合我們的“懶人”形象 ,所以用定時(shí)任務(wù)來(lái)實(shí)現(xiàn)明天自動(dòng)同步是必不可少的 我讓他每天早上8點(diǎn)自動(dòng)執(zhí)行
DO $$
DECLARE
jid integer;
scid integer;
BEGIN
-- Creating a new job
INSERT INTO pgagent.pga_job(
jobjclid, jobname, jobdesc, jobhostagent, jobenabled
) VALUES (
1::integer, '更新表b1'::text, ''::text, ''::text, true
) RETURNING jobid INTO jid;
-- Steps
-- Inserting a step (jobid: NULL)
INSERT INTO pgagent.pga_jobstep (
jstjobid, jstname, jstenabled, jstkind,
jstconnstr, jstdbname, jstonerror,
jstcode, jstdesc
) VALUES (
jid, '更新表b1'::text, true, 's'::character(1),
''::text, '數(shù)據(jù)庫(kù)A'::name, 'f'::character(1),
' INSERT into tb_fdw_b1 SELECT * from a1;'::text, ''::text
) ;
-- Schedules
-- Inserting a schedule
INSERT INTO pgagent.pga_schedule(
jscjobid, jscname, jscdesc, jscenabled,
jscstart, jscend, jscminutes, jschours, jscweekdays, jscmonthdays, jscmonths
) VALUES (
jid, '更新表b1'::text, ''::text, true,
'2021-02-07 10:24:50 +08:00'::timestamp with time zone, '2100-02-07 10:24:52 +08:00'::timestamp with time zone,
-- Minutes
ARRAY[true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false]::boolean[],
-- Hours
ARRAY[false,false,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false]::boolean[],
-- Week days
ARRAY[false,false,false,false,false,false,false]::boolean[],
-- Month days
ARRAY[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false]::boolean[],
-- Months
ARRAY[false,false,false,false,false,false,false,false,false,false,false,false]::boolean[]
) RETURNING jscid INTO scid;
END
$$;
到此這篇關(guān)于postgresql 利用fdw來(lái)實(shí)現(xiàn)不同數(shù)據(jù)庫(kù)之間數(shù)據(jù)互通的文章就介紹到這了,更多相關(guān)postgresql實(shí)現(xiàn)數(shù)據(jù)互通內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!