Bir oracle database’ den farklı bir oracle database’ ne gitmek istediğiniz de bu iki farklı sistemin birbiriyle konuşabilmesi için araya kurulan köprüye dblink denir.

3 tip link bulunmaktadır.

  • Private database link: Berlili bir schema’ya aittir. Sadece o database’ın sahibi kullanabilir.
  • Public database link: Bütün kullanıcılara açıktır.
  • Global database link: Oracle OID server’ına tanımlanır. Network’teki herkes tarafından kullanılabilinir.

DBLink Yaratılması:

Database link’leri makine_a’dan makine_b’ye bağlanılmak isteniyorsa makine_a’ya konulur.b’den a’ya erişmek içinse b makinada oluşturulur. Dblink oluşturma syntax’ı ;

 CREATE [PUBLIC] DATABASE LINK yasin_muftuler  
 CONNECT TO other_user  
 IDENTIFIED BY other_user_password  
 USING 'con_info' 
CREATE [PUBLIC] DATABASE LINK yasin_muftuler   
  CONNECT TO other_user   
  IDENTIFIED BY other_user_password   
  USING '(DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST=10.37.14.328)(PORT=1521)))'; 

DBLink’ten Nasıl Bilgi Çekilir?
DBLink’imizi test etmek için aşağıdaki gibi kolay bir sorguyu deneyebiliriz. Yukarıdaki örneklere göre düzenlenmiştir. Bu link denemesiyle birinci makinadan 2. makinaya erişebiliriz. Bu şekilde 2.makinadaki bilgileri diğer database’lere de paylaşmış oluruz.

 select * from dual@yasin_muftuler
   
 veya  
   
 select sysdate from dual@yasin_muftuler 

Database de Var Olan Database Linkleri:

 select * from dba_db_links;  
 select * from all_db_links;
 select * from v$dblink;  
select * from dba_objects where object_type='DATABASE LINK' and object_name='berke_link';  
drop [public] database link 'link_ismi';  

 

https://tr.linkedin.com/pulse/dblink-%C3%BCzerinden-veritaban%C4%B1-kopyalamak-cagatay-cebi