PolarDB PostgreSQL版(相容Oracle)提供了資料庫連結DBLink(Database Link)功能,用於實現跨庫訪問資料。
在資料庫A中建立到資料庫B的DBLink後,通過DBLink,資料庫A可以像訪問自己的資料一樣訪問資料庫B的資料。DBLink的訪問是單向的,若資料庫B也想訪問資料庫A的資料,則需要在資料庫B中也建立到資料庫A的DBLink。
使用情境
當前PolarDB PostgreSQL版(相容Oracle)支援兩種DBLink:PolarDB PostgreSQL版(相容Oracle)到PolarDB PostgreSQL版(相容Oracle)的DBLink和PolarDB PostgreSQL版(相容Oracle)到ECS自建PostgreSQL的DBLink。
- 情境一:PolarDB PostgreSQL版(相容Oracle)到ECS自建PostgreSQL的DBLink
客戶原來使用的是ECS自建PostgreSQL資料庫,在遷移至PolarDB PostgreSQL版(相容Oracle)的過程中,由於部分原因,先遷移了一部分業務系統上PolarDB PostgreSQL版(相容Oracle),此時其它業務還是在ECS自建PostgreSQL資料庫中。由於已遷移的業務系統和剩餘的其他業務之間有資料訪問,為了保證業務的正常運轉,需要實現PolarDB PostgreSQL版(相容Oracle)資料庫和ECS自建PostgreSQL資料庫之間互訪。目前自建PostgreSQL已經支援建立到PolarDB PostgreSQL版(相容Oracle)的DBLink,PolarDB PostgreSQL版(相容Oracle)也需要建立到ECS自建PostgreSQL資料庫的DBLink,從而實現雙向的資料訪問。
- 情境二:PolarDB PostgreSQL版(相容Oracle)到PolarDB PostgreSQL版(相容Oracle)的DBLink
由於業務需求,客戶使用了兩個PolarDB PostgreSQL版(相容Oracle)叢集,假定為PolarDB PostgreSQL版(相容Oracle)(A)和PolarDB PostgreSQL版(相容Oracle)(B),分別存放了不同業務的資料。由於這些不同的業務資料之間需要互動,為了實現這兩個資料庫之間雙向的資料訪問,您可以建立PolarDB PostgreSQL版(相容Oracle)(A)到PolarDB PostgreSQL版(相容Oracle)(B)的DBLink和PolarDB PostgreSQL版(相容Oracle)(B)到PolarDB PostgreSQL版(相容Oracle)(A)的DBLink。