Note_Tech

All technological notes.


Project maintained by simonangel-fong Hosted on GitHub Pages — Theme by mattgraham

DBA Net Service - Database Link

Back


db_link_diagram

CREATE DATABASE LINK <database_link_name>
CONNECT TO <user> IDENTIFIED BY <pwd>
USING '<connect_string_for_remote_db>';
# connect_string_for_remote_db:  tnsname entry

lab_db_link_create lab_db_link_create lab_db_link_create lab_db_link_create

# confirm pdb creation
select name, open_mode from v$pdbs;

alter session set container=prod1;
show con_name;

# grant dba role to pdb admin
grant dba to prod1_admin;


lab_db_link_create lab_db_link_create

# confirm pdb creation
select name, open_mode from v$pdbs;

alter session set container=prod2;
show con_name;

# grant dba role to pdb admin
grant dba to prod2_admin;


PROD1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = test.com)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = prod1.com)
    )
  )

PROD2 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = test.com)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = prod2.com)
    )
  )

lab_db_link_create

lab_db_link_create


show con_name;
create table employees (id number, name varchar2(100));
insert into employees values (1, 'adam');
commit;
select * from employees;

connect prod1_admin@prod1;
show con_name;
show user;

# create a private database link
create database link read_prod2
connect to prod2_admin identified by welcome
using 'prod2';

# query using db link
select * from employees@read_prod2;
#         ID NAME
# ---------- ------------------------------
#          1 adam


lab_db_link_create


TOP