Koneksi Antar Database Menggunakan Database Link


Persiapan sebelum membuat suatu database link adalah melakukan pengecekkan konektifitas antar server database. gunakan ping untuk mengetahui apakah server A dapat berkomunikasi dengan server B. dan gunakan telnet untuk mengetahui apakah port yang digunakan (1521) sudah dibuka atau belum.

misal server database  asal dengan hostname myoracle01 dengan IP 10.22.11.10 dan server database tujuan dengan hostname myoracle02 dengan IP 10.22.11.11

oracle@myoracle01:~> ping 10.22.11.11
 PING 10.22.11.11 (10.22.11.11) 56(84) bytes of data.
 64 bytes from 10.22.11.11: icmp_seq=1 ttl=253 time=3.66 ms
 64 bytes from 10.22.11.11: icmp_seq=2 ttl=253 time=0.940 ms
 ^C
 --- 10.22.11.11 ping statistics ---
 2 packets transmitted, 2 received, 0% packet loss, time 2004ms
 rtt min/avg/max/mdev = 0.940/1.932/3.660/1.226 ms
 oracle@myoracle01:~> telnet 10.22.11.11 1521
 Trying 10.22.11.11...
 Connected to 10.22.11.11.
 Escape character is '^]'.
^C
 Connection closed by foreign host.
 oracle@myoracle01:~>


ok, masalah koneksi antar server beres, setelah itu kita harus menambahkan tns name dari database tujuan ke file tnsname.ora di database asal. cukup menggunakan text editor notepad jika di windows, dan vi editor jika unix.

lokasi tnsname.ora terletak di directory $ORACLE_HOME/network/admin/

ORADB02 =
 (DESCRIPTION =
 (ADDRESS_LIST =
 (ADDRESS = (PROTOCOL = TCP)(HOST = 10.22.11.11)(PORT = 1521))
 )
 (CONNECT_DATA =
 (SID = ORADB02)
 )
 )

setelah tnsname di atas ditambahkan, lakukan tes tns tersebut menggunakan tnsping seperti pada contoh di bawah :

oracle@myoracle01:~> tnsping oradb02
TNS Ping Utility for Linux: Version 10.1.0.4.0 - Production on 12-NOV-2011 03:52:02
Copyright (c) 1997, 2003, Oracle.  All rights reserved.
Used parameter files:
 /home/oracle/OracleHomes/db10g/network/admin/sqlnet.ora
Used TNSNAMES adapter to resolve the alias
 Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.22.11.11)(PORT = 1521))) (CONNECT_DATA = (SID = ORADB02)))
 OK (0 msec)
 oracle@myoracle01:~>

ok tns sudah berhasil dibuat. sekarang saatnya membuat dblink.

CREATE [PUBLIC] DATABASE LINK <nama db link>
 CONNECT TO <userA di oradb02>
 IDENTIFIED BY <password userA>
 USING 'tns name';

misal kita ingin mengakses object dari user EKO yang ada di ORADB02, maka dblink nya akan seperti di bawah ini :

CREATE DATABASE LINK link_eko_oradb02
 CONNECT TO EKO
 IDENTIFIED BY passwordnya#eko
 USING 'ORADB02';

jika tipe dblink-nya publik, maka dapat digunakan oleh semua user. Sedangkan jika tidak maka hanya ownernya saja yang dapat menggunakannya.

contoh penggunaan database link :

select nama,alamat from userB.employee@link_eko_oradb02 where tampang like 'CANTIK' and jeniskelamin like 'PEREMPUAN';

userB, user pemilik table employee. employee@link_eko_oradb02 menunjukkan tabel employee dari database yang dituju oleh dblink link_eko_oradb02

Dengan kaitkata , , , , , , ,

One thought on “Koneksi Antar Database Menggunakan Database Link

  1. pipit kurnia mengatakan:

    kakak memang hebatt,,,tauuu sglaa haal yaa,,,,pembuatan database ntuu rumitt jgaa yaa,,,,

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: