Postgres數(shù)據(jù)庫安裝、配置、使用DBLink的實(shí)例詳解
一、技術(shù)背景
1.1 背景
隨著業(yè)務(wù)復(fù)雜程度的提高、數(shù)據(jù)規(guī)模的增長(zhǎng),越來越多的公司選擇對(duì)其在線業(yè)務(wù)數(shù)據(jù)庫進(jìn)行垂直或水平拆分,甚至根據(jù)業(yè)務(wù)場(chǎng)景選擇不同的數(shù)據(jù)庫類型以滿足其業(yè)務(wù)需求。與此同時(shí),業(yè)務(wù)的數(shù)據(jù)被“散落”在各個(gè)數(shù)據(jù)庫實(shí)例中。如何方便地對(duì)這些數(shù)據(jù)進(jìn)行匯總查詢,已經(jīng)成為困擾使用者的一大問題。
針對(duì)這類問題,我們可以使用基于DBLink的解決方案,使用者通過在一個(gè)數(shù)據(jù)庫實(shí)例中就可以查詢到多個(gè)數(shù)據(jù)庫實(shí)例中的數(shù)據(jù)。
1.2 什么是 DBLink
DBLink技術(shù)源于Oracle,我們可以登錄上一個(gè)Oracle數(shù)據(jù)庫實(shí)例,建立一個(gè)DBLink指向另一個(gè)遠(yuǎn)程的網(wǎng)絡(luò)聯(lián)通的Oracle數(shù)據(jù)庫實(shí)例。
現(xiàn)在,基本上主流的數(shù)據(jù)庫都支持DBLink 操作。
- DBLink和數(shù)據(jù)庫實(shí)例一一對(duì)應(yīng),對(duì)于PostgreSQL來說,對(duì)應(yīng)的就是PostgreSQL數(shù)據(jù)庫所在的ip+port+database
- DBLink可以指向PostgreSQL、SQLServer、MySQL、Oracle等;
- 使用者可通過創(chuàng)建dblink時(shí)獲取到的連接名,對(duì)遠(yuǎn)端的數(shù)據(jù)庫實(shí)例進(jìn)行操作;
二、安裝配置 DBLink
我在本地的一臺(tái) Windows 電腦上裝了postgres14數(shù)據(jù)庫,另一個(gè)數(shù)據(jù)庫實(shí)例在一臺(tái)Linux服務(wù)器的Docker容器中,使用這2個(gè)PG 數(shù)據(jù)庫實(shí)例進(jìn)行下面所有的演示。
2.1 安裝 DBLink
一般我們?cè)诎惭b PostgreSQL 數(shù)據(jù)庫的時(shí)候,不管是二進(jìn)制包還是源碼包,都已經(jīng)有了DBLink插件,只是這個(gè)插件沒有嵌入到PostgreSQL數(shù)據(jù)庫中,我們通過以下命令查看PostgreSQL數(shù)據(jù)庫中可用的插件:
select * from pg_available_extensions;
執(zhí)行后發(fā)現(xiàn)可用的插件非常多,需要分頁顯示。
通過 SQL select * from pg_available_extensions where name like '%dblink%';
發(fā)現(xiàn) PostgreSQL數(shù)據(jù)庫中提供了 DBLink 可供安裝:
如果你的PG數(shù)據(jù)庫是通過源碼編譯安裝的,那么可能通過這個(gè)SQL查到的結(jié)果發(fā)現(xiàn)并沒有DBLink,這時(shí)你需要切換到PG的源碼包目錄,執(zhí)行如下命令:
cd contrib/dblink make make install
這時(shí)再通過上面的SQL就可以查詢到DBLink插件了。
也可通過以下 SQL 查詢已安裝的PG 插件:
select * from pg_extension;
我們可以通過以下 SQL 在 PG 數(shù)據(jù)庫中安裝 DBLink 插件:
create extension dblink;
我們?cè)俨樵働G 數(shù)據(jù)庫中已經(jīng)安裝的插件,就已經(jīng)有了:
2.2 配置 DBLink
找到 PG 數(shù)據(jù)庫的 postgresql.conf
和 pg_hba.conf
這2個(gè)配置文件?
到此這篇關(guān)于PostgreSQL的擴(kuò)展 dblink及安裝使用方法的文章就介紹到這了,更多相關(guān)PostgreSQL擴(kuò)展 dblink內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PostgreSQL 實(shí)現(xiàn)快速刪除一個(gè)用戶
這篇文章主要介紹了PostgreSQL 實(shí)現(xiàn)快速刪除一個(gè)用戶,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01PostgreSQL遷移的幾種實(shí)現(xiàn)方式
本文主要介紹了PostgreSQL遷移的幾種實(shí)現(xiàn)方式,包括邏輯備份、物理復(fù)制、文件系統(tǒng)快照及邏輯復(fù)制這四種方式,具有一定的參考價(jià)值,感興趣的可以了解一下2025-06-06使用postgresql獲取當(dāng)前或某一時(shí)間段的年月日
這篇文章主要給大家介紹了關(guān)于使用postgresql獲取當(dāng)前或某一時(shí)間段的年月日的相關(guān)資料,在PostgreSQL中可以使用函數(shù) NOW() 來查詢當(dāng)前時(shí)間,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07Vcenter清理/storage/archive空間的處理方式
通過SSH登陸到Vcenter并檢查/storage/archive目錄發(fā)現(xiàn)占用過高,該目錄用于存儲(chǔ)歸檔的日志文件和歷史數(shù)據(jù),解決方案是保留近30天的歸檔文件,這篇文章主要給大家介紹了關(guān)于Vcenter清理/storage/archive空間的處理方式,需要的朋友可以參考下2024-11-11postgresql 實(shí)現(xiàn)啟動(dòng)、狀態(tài)查看、關(guān)閉
這篇文章主要介紹了postgresql 實(shí)現(xiàn)啟動(dòng)、狀態(tài)查看、關(guān)閉的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01Postgresql設(shè)置遠(yuǎn)程訪問的方法(需要設(shè)置防火墻或者關(guān)閉防火墻)
這篇文章主要介紹了Postgresql設(shè)置遠(yuǎn)程訪問的方法(需要設(shè)置防火墻或者關(guān)閉防火墻),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03PotgreSQL?基于時(shí)間點(diǎn)恢復(fù)過程
本篇文章介紹?PostgreSQL?基于時(shí)間點(diǎn)恢復(fù)(point-in-time-recover)需要的條件及恢復(fù)過程,屬于操作說明,對(duì)PotgreSQL?時(shí)間點(diǎn)恢復(fù)相關(guān)知識(shí)感興趣的朋友跟隨小編一起看看吧2023-08-08PostgreSQL的generate_series()函數(shù)的用法說明
這篇文章主要介紹了PostgreSQL的generate_series()函數(shù)的用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01