• Tidak ada hasil yang ditemukan

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 2 PEMBUATAN DATABASE LINK (HOMOGENOUS SERVICE)

N/A
N/A
Protected

Academic year: 2021

Membagikan "PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 2 PEMBUATAN DATABASE LINK (HOMOGENOUS SERVICE)"

Copied!
9
0
0

Teks penuh

(1)

PRAKTIKUM BASIS DATA TERDISTRIBUSI

MODUL 2

PEMBUATAN DATABASE LINK

(HOMOGENOUS SERVICE)

LABORATORIUM REKAYASA PERANGKAT LUNAK

TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS MUHAMMADIYAH MALANG

2011 -2012

(2)

I. TUJUAN

Mahasiswa mengenal konsep dari database link

Mahasiswa mampu mengimplementasikan database link untuk pembuatan database teristribusi

Mahasiswa memahami konsep dari global conceptual schema.

Mahasiswa mampu mengimplementasikan query dari global conceptual schema

II. APLIKASI YANG DIBUTUHKAN

Aplikasi Oracle XE SQL Developer Aplikasi Oracle Client

III. DASAR TEORI Database Link

Database link adalah suatu pointer yang mendefinisikan jalur komunikasi satu arah dari suatu server oracle ke server oracle yang lain. Untuk mengakases link tersebut, suatu server harus membangun koneksi ke remote database.

Koneksi dari database link merupakan koneksi searah diaman suatu client yang terkoneksi ke local database A dapat menggunakan objek database link yang disimpan di dalam A untuk mengakses database B. Akan tetapi sebaliknya client yang terkoneksi ke local database B tidak dapat mengakses database yang ada di server A tanpa membangun koneksi (database link) ke A terlebih dahulu.

Database link memungkinkan suatu local user suatu database dapat mengakses data pada remote database. Untuk setiap koneksi ke suatu server, diperlukan suatu objek database link yang mempunyai nama unik, yang disebut global database name

Database link dapat bersifat private atau public. Jika suatu database link private, maka hanya user yang membuat database link saja yang mempunyai akses terhadap database link tersebut. Akan tetapi jika database link bersifat public, maka semua user database mempunyai akses terhadap database link tersebut.

User dapat terkoneksi ke database link dengan beberapa macam koneksi.

Type of Link Description

Connected user link Users connect as themselves, which means that they

must have an account on the remote database with the same username and password as their account on the

Fixed user link Users connect using the username and password

referenced in the link. For example, if Jane uses a fixed user link that connects to the hq database with the username and password scott/tiger, then she connects as scott, Jane has all the privileges in hq granted to scott directly, and all the default roles that scott has been granted in the hq database.

(3)

Current user link A user connects as a global user. A local user can connect as a

global user in the context of a stored procedure, without storing the global user's password in a link definition. For example, Jane can access a procedure that Scott wrote, accessing Scott's account and Scott's schema on the hq database. Current user links are an aspect

of Oracle Advanced Security.

Shared Database Link

Shared database link merupakan suatu link yang dibentuk dari local server dan remote database. Suatu link di-share karena beberapa proses client dapat menggunakan link yang sama secara simultan

Pada saat local database dikoneksikan dengan remote database melalui database link, makan dapat berjalan dalam mode dedicated atau share server. Table dibawah ini mengilustrasikan beberapa kemungkinan yang terjadi.

Local Database Mode Remote Database Mode

Dedicated Dedicated Dedicated Shared server Shared server Dedicated Shared server Shared server

Global Database Name

(4)

Database membentuk global database name dengan menambah suatu awalan nama (nama koneksi database) pada network domain.

Global database name adalah nama dari objek database link yang dibuat, yang harus memiliki nama yang unik. Gambar diabawah ini mengilustrasikan bagaiman global database link dibentuk

Penamaan Database Link

Secara umum nama dari database link sama dengan nama dari global database name dari suatu remote database yang diakses. Sebagai contoh jika nama dari global database name sales.us.oracle.com, maka nama dari database link juga sales.us.oracle.com.

Pada saat dilakukan pemasukan nilai untuk inisialisasi parameter GLOBAL_NAMES to TRUE, maka database menjamin bahwa nama dari database link sama dengan nama dari gobal database link dari remote database. Sebaliknya pada saat dilakukan inisialisasi parameter GLOBAL_NAMES to FALSE, maka tidak diperlukan untuk menggunakan penamaan global, dan dapat secara bebas membuat nama database link.

Berikut ini adalah contoh pembuatan database link :

CREATE PUBLIC DATABASE LINK sales.division3.acme.com USING 'sales1'

Tipe Database Link

Tipe database link ada tiga macam, yaitu private, public, and global database links. Tipe database link ini dibedakan berdasarkan hak akses suatu database link terhadap user-user yang ada di dalam database tersebut.

(5)

Type Owner Description

Private User who created the link. View ownership data through:

■ DBA_DB_LINKS ■ ALL_DB_LINKS ■ USER_DB_LINKS

Creates link in a specific schema of the local database. Only the owner of a private database link or PL/SQL subprograms in the schema can use this link to access database objects in the corresponding remote database.

Public User called PUBLIC. View ownership data through views shown for private database links.

Creates a database-wide link. All users and PL/SQL subprograms in the database can use the link to access database objects in the corresponding remote database.

Global User called PUBLIC. View ownership data through views shown for private database links.

Creates a network-wide link. When an Oracle network uses a directory server, the directory server automatically create and manages global database links (as net service names) for every Oracle Database in the network. Users and PL/SQL subprograms in any database can use

a global link to access objects in the corresponding remote database.

Note: In earlier releases of Oracle

Database, a global database link referred to a database link that was registered with an Oracle Names server. The use of an Oracle Names server has been deprecated. In this document, global database links refer to the use of net service names from the directory server.

User Database Link

Pada saat membuat database link, kita dapat menentukan user mana yang akan membentuk koneksi ke remote database untuk mengakses data. Tabel di bawah ini menjelaskan perbedaan antara beberapa kategori user yang terlibat di dalam pembuatan database link.

User Type Description Sample Link Creation Syntax

Connected user

A local user accessing a database link in which no fixed username and password have been specified. If SYSTEM accesses a public link in a query, then the connected user is SYSTEM, and the database connects to the SYSTEM schema in the remote database.

Note: A connected user does not have to be the user who

created the link, but is any user who is accessing the link.

CREATE PUBLIC DATABASE LINK hq USING 'hq';

(6)

Current user A global user in a CURRENT_USER database link. The global user must be authenticated by an X.509 certificate (an SSL-authenticated

enterprise user) or a password (a password-authenticated enterprise user), and be a user on both databases involved in the link. Current user links are an aspect of the Oracle Advanced Security option.

See Oracle Database Advanced Security

Administrator's Guide for information about global

security CREATE PUBLIC DATABASE LINK hq CONNECT TO CURRENT_USE R using 'hq';

Fixed user A user whose username/password is part of the link definition. If a link includes a fixed user, the fixed user's username and password

are used to connect to the remote database.

CREATE PUBLIC DATABASE LINK hq CONNECT TO jane IDENTIFIED BY doe USING 'hq';

Contoh pembuatan database link

Pembuatan database link dilakukan dengan menggunakan statemen CREATE DATABASE LINK. Di dalam table ini diberikan contoh pembuatan database link di dalam local database untuk mengakases remote database sales.us.americas.acme_auto.com:

SQL Statement Connects To Database Connects As Link Type

CREATE DATABASE LINK sales.us.americas.acme_ auto.com USING 'sales_us';

sales using net service name sales_us

Connected user Private connected user

CREATE DATABASE LINK foo CONNECT TO CURRENT_USER USING 'am_sls';

sales using service name am_sls

Current global user Private current user

CREATE DATABASE LINK sales.us.americas.acme_ auto.com CONNECT TO scott IDENTIFIED BY tiger USING 'sales_us';

sales using net service name sales_us

scott using password

tiger

Private fixed user

CREATE PUBLIC DATABASE LINK sales CONNECT TO scott IDENTIFIED BY tiger USING 'rev';

sales using net service name rev

scott using password

tiger

Public fixed user

Schema Object dan Database Link

Setelah membuat database link, maka kita dapat mengeksekusi perintah SQL yang akan mengakses objek database yang berada pada remote database. Sebagai contoh untuk mengakses remote objek emp dengan menggunakan database link foo, kita dapat menuliskan statemen: SELECT * FROM emp@foo;

Penamaan Schema Object menggunakan Database Link

(7)

objek dengan cara berikut

schema.schema_object@global_database_name

Dimana:

schema adalah kumpulan dari struktur data, atau schema object. Suatu schema dimiliki oleh user

database an mempunyai nama yang sama dengan nama user tersebut.

schema_object merupakan suatu struktur logic data dari table, indeks, view, synonym,

prosedur, package atau database link.

global_database_name merupaj nama remote database link yang sifatnya unik.

Transparency di dalam Database Terdistribusi

Transparency merupakan salah satu konsep yang ada di dalam Database Terdistribusi dimana lokasi dari objek database yang asli (tabel), disembunyikan dari user. Sehingga user mengetahui seolah-olah objek database yang diakases berada pada database itu sendiri.

Didalam Database Terdistribusi ini konsep transparency dapat dibuat dengan cara memberi nama alias pada object database link yang dibuat. Di dalam Oracle pemberian nama alias ini bisa menggunakan SYNONYM

Syntax: Dari SYNONYM

Contoh:

IV.SOAL PRAKTIKUM

1. Aktifkan login HR pada masing-masing server database (login dengan user system melalui enterprise manager console)

2. Buatlah konfigurasi database link yang melibatkan tiga buah komputer server database oracle yang saling terhubung antara satu dengan yang lain. (komputer server bisa disimulasikan menggunakan virtual machine/ Virtual Box). Lihat gambar dibawah (arah tanda panah merupakan arah dari koneksi database link). Komputer server A dapat mengakses data pada komputer server B. Sedangkan komputer server B dapat mengakases data pada komputer server C dan sebaliknya komputer server C juga dapat mengakses komputer server B.

CREATE [ OR REPLACE ] [ PUBLIC ] SYNONYM [ schema. ]synonym

FOR [ schema. ]object [ @ dblink ] ;

CREATE PUBLIC SYNONYM emp_table

(8)

3. Buatlah table Salary pada server C, yang memiliki isi EMPLOYEE_ID, SAL_ID, TOTAL_SALARY, DATE. Kemudian isikan data dummy (data simulasi) pada table tersebut. Lakukan Query pada server A untuk mengambil data Salary yang ada pada server C

Dengan menggunakan database link yang terdapat pada Server A, tambahkan data berikut pada table Region yang terdapat pada Server C. (DML dilakukan pada server A)

Region_ID Region_name 6 South East Asia

Tambahkan juga data Countries berikut yang terdapat di Server B melalui Server A (DML dilakukan pada server A)

country_id country_name region_id

ID Indonesia 6

MY Malaysia 6

SG Singapore 6

TH Thailand 6

BD Brunai Darussalam 6

4. Sesuai dengan konfigurasi sebelumnya, bisakah dari server database C, melakukan query ke server database A, (bisa/tidak)? Jelaskan secara logis alasan Anda (kenapa bisa/tidak) !!!

5. Dari server Database A buatlah view yang digunakan untuk menampilkan seluruh Country yang ada di server B dan berada di wilayah Region South East Asia (ingat!!! Data region South East Asia hanya terdapat di server C).

6. Dari server A buatlah query untuk menampilkan data Countries di server B yang tidak dimiliki oleh server C.

7. Dari server A buatlah satu buah DML yang digunakan untuk menambahkan data Countries di server C, sehingga data tabel Countries yang ada pada server C, sama dengan yang ada pada server B.

(9)

Catatan:

Gambar

Gambar diabawah ini mengilustrasikan bagaiman global database link dibentuk

Referensi

Dokumen terkait

Bank Jabar Banten Cabang Soreang Bandung mengalami kenaikan sebesar 192.99 hal ini disebabkan karna permintaan kredit pada tahun tersebut mengalami kenaikan dari

Reaksi yang paling utama dari senyawa aromatik adalah reaksi substitusi aromatik elektrofilik digambarkan sebagai (E+) yang akan bereaksi dengan cincin aromatik

Pulsa sinkronisasi gambar untuk menandai akhir sebuah setengah gambar dan sekaligus untuk mengantarkan arah balik sinar elektron dari sisi layar gambar bawah ke sisi layar

Menimbang : bahwa dalam rangka pelaksanaan ketentuan Pasal 81 Peraturan Pemerintah Nomor 6 tahun 2006 tentang Pengelolaan Barang Milik Negara / Daerah sebagaimana telah

Penelitian ini menggunakan variabel dependen peringkat obligasi dan variabel independen pajak tangguhan besar positif dan negatif serta rasio pajak yang besar dan

daya manusia khususnya orang asli Kabupaten Jayapura namun dalam implementasi kebijakan tersebut, masih belum mencapai titik sasaran karena bersifat sporadik dan

Dengan diketahuinya gambaran MRSA pada penderita infeksi kaki diabetik di Poliklinik Kaki Diabetik RSUD Ulin Banjarmasin, maka dapat memberikan informasi mikrobiologis

Perawat juga kadangkala terlibat dalam sebuah permasalahan yang membingungkan untuk mengambil keputusan disebut dengan masalah etika atau dilema etik dimana dalam pembuatan