BAB 4 RANCANGAN MIGRAS I DAN REPLIKAS I DATA YANG DIUS ULKAN
4.1.Kerangka Perancangan Migrasi dan Replikasi Data Tahap awal perancangan dimulai dengan menganalisis kebutuhan perusahaan akan database yang lebih tangguh daripada database yang sedang digunakan sekarang yaitu MySQL. Kemudian dilanjutkan dengan menganalisis alur sistem berjalan yang berhubungan dengan basis data yang akan dimigrasi dan direplikasi yaitu sistem hanggar. Proses utama yang pertama akan dilakukan adalah melakukan migrasi dengan menggunakan Oracle SQL Developer untuk mengubah database MySQL menjadi Oracle. Hal ini dilakukan agar database sistem hanggar yang telah dimigrasi dapat direplikasi secara aktif-pasif. Proses utama yang kedua adalah melakukan replikasi aktif-pasif pada database sistem hanggar untuk menghasilkan primary database yang digunakan oleh proses transaksi bisnis dan secondary database yang berperan sebagai backup database yang digunakan juga untuk live reporting, dengan menggunakan Oracle Goldengate. Dengan dua set data ini, perusahaan dapat menggunakan database secondary sebagai database backup ketika terjadi outage pada database primary. Kemudian pada tahap perancangan migrasi dan replikasi data, akan dijelaskan metode yang digunakan, proses pengerjaannya dan sintaks-sintaks yang digunakan untuk melakukan kedua proses utama itu. Pengerjaannya tidak akan dilakukan secara bersamaan karena kedua proses tersebut dilakukan dengan menggunakan dua aplikasi yang berbeda seperti yang telah disebutkan di atas. Dari hasil analisis proses di atas, akan dibuat rancangan layar yang sesuai. Terakhir, dari hasil perancangan tersebut akan 147
148
dibangun sebuah tool sederhana yang telah disesuaikan, yang kemudian akan digunakan untuk mempermudah proses replikasi database Oracle. 4.2.Kebutuhan Perangkat Keras dan Perangkat Lunak Goldengate memungkinkan arsitektur sistem operasi dan jenis database yang berbeda antara source database dan target database. Tetapi untuk pengimpelementasian pada PT M etro Batavia akan digunakan sistem operasi dan jenis database yang sama. Berikut adalah deskripsi kebutuhan perangkat keras dan perangkat lunak untuk database server dan storage server, baik pada source maupun target system, pada PT M etro Batavia. a. Perangkat Keras •
Database server menggunakan perangkat keras : IBM LS41 16 GigaByte RAM (Random Access Memory). Harddisk 73 GigaByte
•
Storage server menggunakan perangkat keras : HP EVA 8100 dengan kapasitas total RAW 12 TeraByte
b. Perangkat Lunak Database server MySQL menggunakan perangkat lunak : •
Sistem operasi
:
Centos 5.5
•
Versi database
:
MySQL 5.1.0
Database server Oracle menggunakan perangkat lunak : •
Sistem operasi
: RedHat Enterprise Linux 4 Update 7 64 bit
•
Versi database
: Oracle 10.2.1.0
149
4.3.Kebutuhan Perangkat Keras dan Perangkat Lunak Prototype Sebagai prototype, penulis hanya menggunakan perangkat sederhana, berupa sebuah komputer yang berperan sebagai source database dan sebuah komputer yang berperan sebagai target database dengan spesifikasi perangkat keras dan lunak sebagai berikut : a. Perangkat Keras Database server pada source dan target menggunakan perangkat keras : •
IBM HS22
•
4 GigaByte RAM
•
Harddisk 50 GigaByte
b. Perangkat Lunak Database server MySQL menggunakan perangkat lunak : •
Sistem operasi
:
Centos 5.5
•
Versi database
:
MySQL 5.1.0
Database server Oracle menggunakan perangkat lunak : •
Sistem operasi
: RedHat Enterprise Linux 4 Update 7 64 bit
•
Versi database
: Oracle 10.2.1.0
4.4.Migrasi Data M igrasi data dengan source database M ySQL 5.1.50 pada sistem operasi Centos 5.5 (64 bit) dan target database Oracle 10gR2 pada sistem operasi RedHat Linux 4.7 (64 bit), dilakukan dengan menggunakan aplikasi SQL Developer 2.1. Penulis membagi
150
langkah-langkah migrasi menjadi 2 tahap yaitu proses persiapan dan proses migrasi. Pada proses persiapan ini penulis menjelaskan hal-hal yang perlu dipersiapkan, tools dan environment pada sistem yang harus disesuaikan. Kemudian pada proses migrasi penulis akan menjelaskan tahap demi tahap proses migrasi dengan menampilkan juga gambargambar yang bisa membantu pembaca dalam mengerti tahap demi tahap proses migrasi menggunakan Oracle SQLDeveloper.
Secara keseluruhan, tahapan migrasi dapat dilihat pada flowchart berikut.
Gambar 4.1 Flowchart Migrasi
4.4.1. Preparation / Persiapan 1. Umumnya aplikasi SQL Developer 2.1 dapat mengerjakan migrasi data dengan source database MySQL jika database MySQL yang
151
digunakan adalah versi 4.x dan 5.0. Karena dalam hal ini perusahaan mengunakan source database MySQL versi 5.1.50, maka ada requirement yang harus dikerjakan, yaitu menyediakan mysqlconnector versi 5.0.x dan jdk versi 6 update 16. Di dalam perancangan migrasi ini kami menggunakan mysql connector versi 5.0.4.
2. Hal berikutnya yang harus dipersiapkan adalah konfigurasi sistem. Firewall dan SELinux pada Centos dan RedHat harus dalam keadaan disable. Hal ini perlu dilakukan untuk menghindari masalah connection refused, sehingga koneksi dari Centos ke Windows dan dari RedHat ke Windows tidak terganggu ketika melakukan migrasi. Untuk mematikan firewall dan SELinux pada Centos 5.5, lakukan tahap-tahap berikut. 1.
Gambar 4.2 Menu security level and firewall M asuk ke menu security level and firewall (gambar 4.2)
152
2.
Gambar 4.3 Nonaktifkan firewall Nonaktifkan firewall (gambar 4.3) 3.
Gambar 4.4 Nonaktifkan selinux Nonaktifkan selinux (gambar 4.4) 4.
Gambar 4.5 Apply Klik Apply (gambar 4.5)
153
Berikut adalah langkah-langkah mematikan firewall pada RedHat 4.7: 1.
Gambar 4.6 Menu security level and firewall M asuk ke menu security level and firewall (gambar 4.6) 2.
Gambar 4.7 Nonaktifkan firewall Nonaktifkan firewall (gambar 4.7) 3.
Gambar 4.8 Nonaktifkan selinux Nonaktfikan selinux (gambar 4.8)
154
4.
Gambar 4.9 Apply Klik Apply (gambar 4.9)
5. Langkah berikutnya adalah meng-install java 6 update 16.
6.
Gambar 4.10 Tampilan browse java.exe Setelah
selesai meng-install
java,
jalankan
sqldeveloper.exe,
kemudian masukkan path dari java yang sudah di-install sebelumnya (gambar 4.10).
155
7.
Gambar 4.11 Tampilan add entry third-party JDBC Drivers Langkah berikutnya adalah menambahkan mysql-connector 5.0.4 pada sqldev. Dengan menambahkan mysql-connector, kita dapat membuat koneksi dengan source atau target database MySQL. Cara menambahkan mysql-connector yaitu, masuk ke menu tools, pilih Preferences, kemudian pilih database, third-party JDBC drivers, kemudian add entry dan masukkan .jar milik mysql. Gambar 4.11 merupakan tampilan setelah menambahkan mysql-connector.
8. Persiapan penggunaan aplikasi SQL Developer sampai di sini, berikutnya akan masuk ke tahap proses migrasi.
156
4.4.2. Migration / Proses Migrasi Tahapan migrasi menggunakan Oracle SQL Developer adalah sebagai berikut. 1.
Gambar 4.12 Tampilan koneksi MySQL
Gambar 4.13 Tampilan koneksi Oracle Hal yang pertama yang harus dikerjakan adalah membuat koneksi pada source database dan target database. Add connection untuk mysql seperti pada gambar dan juga koneksi untuk oracle seperti pada gambar 4.12 dan 4.13.
157
2.
Gambar 4.14 Create Repository Setelah kedua koneksi sudah ditambahkan, create repository untuk oracle server. M enu create repository dapat dilihat pada gambar 4.14.
3.
Gambar 4.15 Installing Repository Berikut (gambar 4.15) adalah tampilan proses create tables untuk oracle server. Proses ini berjalan ketika pilihan untuk create repository sudah dilakukan.
158
4.
Gambar 4.16 Capture Schema
Gambar 4.17 Capturing Database Pada database mysql yang akan dimigrasi, klik kanan dan pilih capture schema (gambar 4.16). Pada tahap ini semua tabel pada skema hanggarcgk akan di-capture. Proses dari capture database ini dapat dilihat pada gambar 4.17.
5.
Gambar 4.18 Captured Models
159
Selesai capture schema, maka pada windows captured models, akan ada hasil capture (gambar 4.18).
6.
Gambar 4.19 Convert to Oracle Model
Gambar 4.20 Converting Database Kemudian klik kanan hasil capture tersebut dan pilih convert to Oracle model (gambar 4.19).
Pada tahap ini hasil capture dari
database mysql akan di-convert ke dalam model database Oracle. Proses dari convert dapat dilihat pada gambar 4.20.
160
7.
Gambar 4.21 Converted Models Setelah proses convert selesai, akan ada hasil convert pada windows converted models seperti pada gambar 4.21.
8.
Gambar 4.22 Generate
Gambar 4.23 Generating Oracle SQL
161
Klik kanan hasil convert tersebut dan pilih generate (gambar 4.22). Proses generate ini ditampilkan pada gambar 4.23.
9.
Gambar 4.24 Run script Setelah generate selesai, akan ada script yang harus dijalankan. Jalankan script tersebut. Tampilan pesan untuk menjalankan script dapat dilihat pada gambar 4.24.
10.
Gambar 4.25 Data Move Details
162
Gambar 4.26 Data Move Complete Setelah script tersebut dijalankan, maka struktur tabel dari database MySQL akan ter-capture ke database Oracle. Selanjutnya adalah melakukan copy data dari M ySQL ke Oracle. Untuk melakukan ini, pilih menu Tools > Migration > Move Data.
11. Setelahnya, proses move data akan berjalan dan proses migrasi selesai. Waktu yang diperlukan untuk migrasi database hanggar dengan 234817 record adalah sekitar 3,5 menit.
163
4.5 Replikasi Data Pada penulisan ini penulis akan memaparkan tahap-tahap melakukan replikasi aktif-aktif menggunakan Oracle Goldengate. Dimulai dari preparation/persiapan hingga pada pengaktifan replikasi aktif-pasif. Berikut adalah flowchart umum proses dari preparation hingga replikasi aktif-pasif.
Gambar 4.27 Flowchart Replikasi data
4.5.1
Preparation pada target database Konfigurasi awal yang perlu dilakukan adalah mempersiapkan target
database, yaitu Oracle 10.2.1.0. Berikut adalah persyaratan yang harus dipenuhi: •
RAM fisik minimal 1GB
•
Tabel 4.1 merupakan daftar persyaratan swap space yang dibutuhkan, disesuaikan dengan besar RAM .
164
RAM
S wap S pace
512 M B
2 x besar RAM
Antara 1024-2048 M B
1.5 x besar RAM
Antara 2049-8192 M B
Sama dengan besar RAM
Lebih dari 8192 M B
0.75 besar RAM Tabel 4.1 RAM dan Swap Space
•
Disk space sebesar 400 M B untuk directory /tmp
•
Disk space sebesar 1.5-3.5 GB untuk perangkat lunak Oracle, tergantung pada tipe instalasi
•
Disk space sebesar 1.2 GB untuk database yang menggunakan system storage (opsional).
Berikut langkah-langkah dalam penginstalasian Oracle 10G : 1.
Gambar 4.28 Installation Method
165
Jalankan runInstaller.exe sebagai user oracle, maka akan muncul Install Wizard (GUI) seperti pada gambar 4.28. •
Pilih basic installation
•
Pilih create starter database kemudian masukkan nama database serta password database.
•
Next
2.
Gambar 4.29 Specify inventory directory and credentials Setelah itu akan muncul layar seperti pada gambar 4.29. Klik Next.
3.
Gambar 4.30 Product-Specific Prerequisite Checks
166
Setelah itu Oracle Installer akan mengecek OS (gambar 4.30). Pastikan semua requirement terpenuhi, jika ada warning mengenai Network, bisa diabaikan.
4.
Gambar 4.31 Summary Jika semua requirement sudah terpenuhi, klik Install. Berikut adalah tampilan tahap summary.
5.
Gambar 4.32 Install
167
Proses instalasi akan berjalan (gambar 4.32) dan tunggu hingga 100%.
6.
Gambar 4.33 Database Configuratin Assistant
Gambar 4.34 Password Management Ketika muncul layar berikut (gambar 4.33), klik password management dan masukkan password untuk sys dan system seperti pada gambar 4.34.
168
7.
Gambar 4.35 Execute Configuration Scripts
Gambar 4.36 ampilan hasil menjalankan script Di tengah-tengah instalasi kita akan diminta untuk menjalankan 2 script sebagai user root. Di terminal, sebagai root, jalankan script yang tertera di tampilan seperti pada gambar 4.35 dan tampilan hasilnya pada gambar 4.36. 8.
Gambar 4.37 End Installation Akhir dari instalasi ditampilkan seperti pada gambar 4.37.
169
9. Setelah menyalakan listener dengan command : lsnrctl start pada terminal, masuk ke sql dengan command : sqlplus / as sysdba.
10.
Gambar 4.38 Create tablespace Pertama create tablespace yang akan digunakan. Tablespace ini akan menjadi milik user oraclegg yang akan kita create setelahnya. Berikut (gambar 4.38) adalah tampilan proses create tablespace ggs_data.
11.
Gambar 4.39 Create User O raclegg Kemudian create user oraclegg. User ini akan berperan sebagai schema khusus sebagai pengguna Oracle Goldengate.
170
12.
Gambar 4.40 G rant privileges to oraclegg Berikan hak-hak (privileges) seperti pada gambar 4.40 kepada user oraclegg untuk pengaksesan database dan modifikasi data pada database.
13.
Gambar 4.41 Welcome
171
Setelahnya, ketik netca pada terminal, dengan user oracle untuk membuat TNS (Transparent Network Substrate). TNS adalah arsitektur networking Oracle. TNS menyediakan suatu antarmuka aplikasi untuk memungkinkan aplikasi jaringan unuk mengakses protokol jaringan underlying secara transparan. Setelah mengetik netca pada terminal, akan ada wizard Oracle Net Configuration Assistant seperti pada gambar 4.41. Pilih local net service name configuration.
14.
Gambar 4.42 Net Service Name Configuration - Add Pilih Add (gambar 4.42). 15.
Gambar 4.43 Net Service Name Configuration
172
M asukkan nama net service (gambar 4.43). Nama net service ini harus sesuai dengan nama ORACLE SID. Karena dalam hal ini nama ORACLE SID adalah orcl, maka nama net service ini juga adalah orcl.
16.
Gambar 4.44 TCP/IP Port
M asukkan host name dan masukkan port number jika tidak ingin menggunakan port number 1521. Host name bisa diisi dengan nama host pada server tersebut, atau bisa juga diisi dengan ip address server tersebut. Untuk lebih jelasnya, gambar 4.44 merupakan tampilan untuk langkah ini.
173
17.
Gambar 4.45 Test
Gambar 4.46 Change Login
Tahap berikutnya kita akan ditanya apakah ingin melakukan tes koneksi atau tidak. Lebih baik lakukan tes koneksi ini. Pilh Yes, perform a test seperti pada gambar 4.45, dan kemudian lakukan tes tersebut dengan user oraclegg. Untuk melakukan tes sebagai oraclegg, klik change login dan masukkan username dan password seperti pada gambar 4.46.
174
18.
Gambar 4.47 Test Connection Pastikan bahwa test sukses (gambar 4.47).
19.
Gambar 4.48 Another net service name Pilih No di layar berikutnya (gambar 4.48).
175
20.
Gambar 4.49 Complete
Gambar 4.50 Finish Klik Next dan Finish setelahnya (gambar 4.49 dan 4.50).
4.5.2
Konfigurasi pada sou rce dan target database Berikut adalah konfigurasi-konfigurasi yang akan dilakukan pada source
dan target database. Untuk memperjelas tahap-tahap yang dikerjakan, berikut adalah flowchart tahao-tahap konfigurasi pada source atau target database.
176
Gambar 4.51 Flowchart Konfigurasi Environment pada Source/Target Database
1.
Gambar 4.52 Konfigurasi hosts pada source system
177
Gambar 4.53 Konfigurasi hosts pada target system Lakukan konfigurasi TCP/IP dan DNS pada /etc/hosts. Hal ini dilakukan agar server bisa mengenal host name dari server lain yang akan berhubungan dengannya. Untuk source database, konfigurasi dapat dilihat pada gambar 4.51, sedangkan untuk target database, konfigurasi dapat dilihat pada gambar 4.52.
2.
Gambar 4.54 Command netstat –na M anager pada Goldengate berperan sebagai admin yang mengatur seluruh aktivitas Goldengate. Untuk itu, manager juga memerlukan port. Port default untuk manager adalah 7809, maka pastikan port 7809 belum digunakan dengan command netstat –na.
3.
Gambar 4.55 Konfigurasi add useroraclegg
178
Tahap berikutnya adalah create user oraclegg. User ini akan berperan sebagai pemilik dari file dan folder Oracle Goldengate. Penulis memasukan user oraclegg ke group oinstall dengan peran sebagai dba, oper, dan oracle. Dengan adanya peran tersebut, user oraclegg dapat masuk ke sqlplus dan juga bisa mengakses data-data untuk Oracle database.
4.
Gambar 4.56 Konfigurasi .bash_profile Hal berikutnya yang perlu environment
dari system
dilakukan
dengan
adalah
menyesuaikan
Oracle Goldengate.
Untuk
melakukan penyesuaian ini, kita harus menambahkan parameter dan mengubah parameter path di file .bash_profile milik user oraclegg.
179
Hasil editan file .bash_profile dapat dilihat pada gambar 4.55. Setelah editan selesai, aktifkan profile user oraclegg dengan command . ./.bash_profile.
5.
Gambar 4.57 Konfigurasi directory ggs Langkah berikutnya adalah membuat directory untuk menyimpan file ekstrak dari Oracle Goldengate. Directory ini pada akhirnya akan menjadi milik user oraclegg dan merupakan directory yang menjadi path milik user oraclegg, sesuai dengan hasil editan file .bash_profile di langkah sebelumnya.
Penulis memberikan nama ggs untuk
directory ini dan letaknya pada /u01/app/oracle/ggs. Cara membuat directory ini dapat dilihat pada gambar 4.56.
6.
Gambar 4.58 Unzip file V2229-01-170859.zip Copy file zip yang berisi file-file Oracle Goldengate ke directory ggs yang dibuat di langkah 5. Setelah meng-copy file zip Goldengate tersebut, lakukan unzip seperti pada gambar 4.57.
180
7.
Gambar 4.59 Extract file ggs_Linux_x64_64bit_v11_1_1_0_0_078.tar Hasil dari unzip pada langkah 6, salah satunya adalah file .tar yang berisi semua file yang diperlukan untuk menjalankan Goldengate. Oleh karena itu, tahap selanjutnya adalah meng-extract file .tar tersebut.
8.
Gambar 4.60 Konfigurasi chown dan chmod directory ggs Setelahnya, berikan hak directory ggs kepada user oraclegg. Dengan melakukan hal ini, maka ketika ingin menjalankan Oracle Goldengate dengan masuk ke terminal ggsci, user yang digunakan harus oraclegg.
9. Pastikan firewall dan selinux dalam keadaan disable. Untuk langkah ini dapat dilihat lebih jelasnya di sub bab 4.4.1 pada langkah ke-2. Hal ini dilakukan agar koneksi bisa lancer dan tidak terganggu antara source dan target system.
181
10.
Gambar 4.61 GGS CI Jika langkah 18 sudah diselesaikan, maka dengan user oraclegg dan dengan lokasi /u01/app/oracle/ggs, user bisa menggunakan Oracle Goldengate dengan menggunakan command ggsci. GGSCI adalah command interface antara user dan komponen-komponen fungsional Oracle Goldengate.
11.
Gambar 4.62 Create subdirs Jika sudah masuk ke interface ggsci, hal pertama yang harus dilakukan baik pada target maupun source database adalah membuat
182
directory
yang
diperlukan
oleh
Oracle
Goldengate.
Oracle
Goldengate telah memfasilitasi pembuatan directory tersebut dengan command create subdirs pada ggsci.
12.
Gambar 4.63 Start listener Sebelum melanjutkan proses penggunaan ggsci, sebagai user oracle, nyalakan listener. Hal ini perlu dilakukan sebelum kita menjalankan manager pada ggsci. M anager akan berjalan jika listener sudah berjalan dan database dalam status open. Karena user oraclegg tidak memiliki privilege untuk menjalankan listener, maka di terminal yang baru atau di terminal yang sama, jalankan listener dengan command lsnrctl start dengan user oracle (asumsi : user oracle adalah user yang dikhususkan untuk Oracle Database).
13.
Gambar 4.64 Startup mount database
183
Hal berikutnya yang perlu dilakukan sebelum start manager adalah mengaktifkan database. Sebelum open database, ada beberapa hal yang perlu dilakukan sehingga kita perlu menggunakan command startup mount, bukan startup. M asuk ke sqlplus sebagai sysdba dan startup mount database.
14.
Gambar 4.65 Alter database archivelog Lakukan alter archivelog pada database. Tujuan utama dari mode archivelog adalah untuk melindung database dari kegagalan instance dan kerusakan media disk melalui pengarsipan secara online dengan mengaktifkan proses pengarsipan ke dalam file redo log. Namun tujuan dalam penulisan ilmiah ini, mode archivelog digunakan untuk mendukung pembacaan sumber data yang akan direplikasi. Proses Extract yang dikonfigurasikan pada Goldengate akan mendapatkan sumber data dari file redo log, sehingga data-data tersebut dapat direplikasi ke dalam target database. 15.
Gambar 4.66 Konfigurasi add supplemental log data
184
Hal berikutnya yang perlu dilakukan adalah menjalankan command ADD SUPPLEMENTAL LOG DATA. Perintah ini digunakan untuk membuat
enable
minimal
supplemental
logging.
Minimal
supplemental logging memungkinkan Oracle Goldengate untuk memproses update pada primary keys dan chained rows.
16.
Gambar 4.67 Alter database open Setelah itu, database sudah boleh di-open.
17.
Gambar 4.68 Konfigurasi parameter Manager Setelah database sudah dalam kondisi open, kita akan melanjutkan konfigurasi pada manager. Konfigurasi manager ini harus dilakukan pada command interface ggsci. M asuk ke ggsci dan ketik edit params mgr dan kemudian masukkan parameter-parameter seperti gambar berikut.
185
Deskripsi dari parameter-parameter yang digunakan pada konfigurasi M anager ini adalah sebagai berikut. Nama Deskripsi Parameter M enentukan PORT TCP/IP dimana M anager PORT menerima permintaan. Username atau nama schema yang digunakan USERID
untuk login, sehingga M anager dapat mengakses database ketika diperlukan. Password yang digunakan untuk login, sehingga
PASSWORD
M anager dapat mengakses database ketika diperlukan.
PURGEOLD
M elakukan purge/penghapusan data trail yang
EXTRACTS
tidak lagi diperlukan. Digunakan untuk melakukan purge/penghapusan
USECHECK suatu file yang diindikasikan oleh checkpoints, POINTS ketika semua proses telah selesai. Tabel 4.2 Deksripsi parameter Manager
18.
Gambar 4.69 Start Manager
186
Setelah selesai konfigurasi parameter file untuk M anager, maka M anager bisa di-start dengan command : START M ANAGER. Dengan melakukan start manager, maka aktivitas lain, seperti extract dan replicat, dapat dijalankan juga.
19.
Gambar 4.70 S tatus Manager Untuk mengecek status manager, dapat dilihat dengan command : info manager, info all, atau status manager. Berikut contoh tampilan dengan command status manager.
20.
Gambar 4.71 Konfigurasi parameter file GLOBALS Hal berikutnya yang perlu dilakukan adalah mengedit parameter ./GLOBAL untuk persiapan sebelum menambahkan grup replicat. File
GLOBALS
ini
menyimpan
parameter-parameter
yang
berhubungan dengan instance Oracle Goldengate secara keseluruhan, dibandingkan dengan parameter-parameter runtime untuk proses khusus.
187
Deskripsi dari parameter-parameter yang digunakan pada konfigurasi file GLOBALS ini adalah sebagai berikut. Nama
Deskripsi
Parameter GGSCHEMA
M enspesifikasikan nama dari schema yang mengandung objek-objek database yang mendukung sinkronisasi DDL untuk Oracle.
CHECKPOINT
M enspesifikasikan tabel checkpoint yang
TABLE
default. Tabel 4.3 Parameter File GLOBALS
21.
Gambar 4.72 Login database Hal berikutnya yang akan dikerjakan adalah membuat tabel yang digunakan untuk checkpoint. Hal ini dapat dikerjakan melalui ggsci, tetapi sebelumnya, kita harus memungkinkan Oracle Goldengate untuk mengakses database Oracle. Oleh karena itu, jalankan command DBLOGIN. Berikut adalah deskripsi dari argumen-argumen yang digunakan pada perintah DBLOGIN.
188
Argumen
Deskripsi
USERID <user> User database dan password user, [, PASSWORD digunakan jika database credentials <password>] diperlukan. Password adalah opsional. Perhatikan password yang dimasukkan jika password bersifat case-sensitive. Tabel 4.4 Argumen DBLOGIN
22.
Gambar 4.73 Add Checkpointtable Kemudian tambahkan tabel checkpoint pada schema oraclegg. Gunakan perintah ADD CHECKPOINTTABLE. Perintah ini membuat
tabel
checkpoint
pada
target
database.
Replicat
menggunakan tabel tersebut untuk me-maintain record dari posisi pembacaan pada trail untuk tujuan recovery. Suatu tabel checkpoint adalah
opsional. Penggunaan
tabel checkpoint
menyebabkan
checkpoint menjadi bagian dari transaksi replicat. Ini mengizinkan Replicat untuk memiliki recover yang lebih baik di waktu-waktu tertentu. Satu tabel checkpoint ini dapat menjadi tabel checkpoint default untuk semua grup Replicat pada suatu instance Oracle Goldengate jika sudah menspesifikasikannya pada parameter di file GLOBALS. Tabel checkpoint yang sama dapat digunakan juga oleh lebih dari satu instance Oracle Goldengate (instalasi multiple).
189
23.
Gambar 4.74 Turn off recyclebin Konfigurasi terakhir dalam persiapan penggunaan ggsci untuk pertama kali adalah menjalankan beberapa file sql yang disediakan oleh Oracle Goldengate. Namun sebelumnya, ada konfigurasi yang harus dilakukan pada recyclebin oracle, yaitu alter menjadi off pada sqlplus. Setelahnya, sebagai sysdba di sqlplus, jalankan file-file berikut. SQL> @$GGATE/marker_setup.sql SQL> @$GGATE/ddl_setup.sql SQL> @$GGATE/role_setup.sql SQL> grant GGS _GGS USER_ROLE to oraclegg; SQL> @$GGATE/ddl_enable.sql
4.5.3
Proses Konfigurasi Replikasi Aktif-Pasif Proses replikasi aktif-pasif merupakan replikasi 2 arah, dimana source
dan target database dalam keadaan aktif. Hasil dari proses ini adalah setiap perubahan yang terjadi pada source database akan diterima oleh target database dan setiap perubahan yang terjadi pada target database akan diterima oleh source database. Berikut adalah proses konfigurasi replikasi aktif-pasif.
190
4.5.3.1 Konfigurasi Grup Extract pada Primary System 1.
Gambar 4.75 Add Extract ext_s Sebagai
user
oraclegg,
jalankan
ggsci
pada
lokasi
/u01/app/oracle/ggs dan tambahkan ekstrak pada source database (extract ext_s). Grup extract ini akan berperan sebagai primary extract di primary database. Berikut adalah deskripsi argumen yang digunakan pada saat menjalankan command ADD EXTRACT. Argumen
Deskripsi M erupakan nama dari grup Extract. Dalam penamaan ada beberapa hal yang perlu diperhatikan, yaitu : •
Anda dapat menggunakan hingga 8 karakter
ASCII,
termasuk
karakter-
karakter non-alphanumeric seperti garis bawah (_). Setiap karakter A SCII dapat digunakan,
dengan
panjang
sesuai
dengan yang diizinkan sistem operasi untuk penamaan file. •
Karakter-karakter ASCII berikut tidak diizinkan : {\/:*?“ <>|}
•
Pada HP UX, Linux dan Solaris, nama file dapat menggunakan titik dua (☺
191
atau tanda bintang (*),
walaupun
sebenarnya tidak direkomendasikan. •
Nama grup tidak case-sensitive.
•
Gunakan hanya satu kata.
•
Tidak boleh menggunakan kata “port” pada penamaan menggunakan
grup.
Tetapi
bisa
string “port” sebagai
bagian dari nama grup. •
Jangan menempatkan nilai numeric pada akhir nama grup, seperti fin1, fin10, dll. Anda dapat menempatkan nilai numerik pada awal nama grup, seperti 1fin, dst.
TRANLOG BEGIN {NOW | yyyy-mm-dd [hh:mi: [ss[.cccccc]]]}
M enspesifikasikan suatu timestamp pada data source dimana proses mulai dijalankan. Nilai yang valid yaitu : •
NOW
•
Suatu tanggal dan waktu dalam format : yyyy-mm-dd [hh:mi:[ss[.cccccc]]]
NOW di sini menspesifikasikan waktu dimana
perintah
ADD
EXTRACT
dijalankan. Tabel 4.5 Argumen Add Extract
2.
Gambar 4.76 Add Exttrail untuk Extract ext_s
192
Langkah berikutnya adalah menambahkan local trail pada extract ext_s. Trail adalah suatu file yang berseri yang digunakan Oracle Goldengate sebagai tempat penyimpanan sementara data-data yang diekstrak pada disk, hingga digunakan pada lokasi target. Sebelum melakukan ADD EXTRAIL ini, pastikan bahwa nama local trail tersebut belum terdapat pada directory dirdat pada source
dan
target
system.
Caranya
ke
directory
/u01/app/oracle/ggs/dirdat, kemudian jalankan perintah ls untuk melihat isi directory dirdat tersebut. Berikut adalah deksripsi argumen yang digunakan pada saat Add Exttrail. Argumen
Deskripsi Path penuh dari lokasi trail. Nama trail hanya terdiri dari 2 karakter. Oracle Goldengate menambahkan nama ini dengan 6 digit sequence number ketika suatu file baru di-create. Sebagai contoh, suatu trail yang bernama /u01/app/oracle/ggs/dirdat/zz akan
memiliki
file
yang
bernama
/u01/app/oracle/ggs/dirdat/zz000001, /u01/app/oracle/ggs/dirdat/zz000002, dst.
Nama
dari
grup
Extract
yang akan
dihubungkan dengan trail. hanya satu proses Extract yang dapat menulis data pada trail tersebut. Tabel 4.6 Argumen Add Exttrail
193
3.
Gambar 4.77 Edit Parameter ext_s Kemudian, edit parameter extract ext_s dengan command Edit parameter extract ext_s. Pengeditan parameter ini dapat dikerjakan sebelum ADD EXTRACT (sebelum mengerjakan langkah 1). Deskripsi dari parameter-parameter yang digunakan pada konfigurasi file ext_s ini adalah sebagai berikut. Parameter
Deskripsi
EXTRACT
M endefinisikan suatu grup Extract sebagai suatu proses online.
USERID,
M enspesifikasikan
informasi
koneksi
ke
PASSWORD
database.
EXTTRAIL
M enspesifikasikan lokasi trail dimana data yang diekstrak akan ditulis pada sistem lokal.
TABLE
M enspesifikasikan tabel-tabel untuk ekstraksi dan mengontrol column mapping dan konversi. Tabel 4.7 Parameter Extract
4.
Gambar 4.78 Add Extract pump_s
194
Setelahnya, tambahkan grup data pump pump_s. Data pump berfungsi sebagai ekstrak tambahan yang akan membaca file trail local dan kemudian akan mengirimkan perubahan data yang ditangkap pada file trail tersebut ke file trail dari sistem target. 5.
Gambar 4.79 Add rmttrail untuk extract pump_s Tambahkan alamat dari file trail pada sistem target yang kemudian ditambahkan pada ekstrak pump_s. 6.
Gambar 4.80 Edit parameter pump_s Edit parameter pump_s sesuai gambar di atas. Berikut ini adalah deskripsi dari parameter-parameter yang digunakan pada ekstrak ini.
195
Parameter
Deskripsi
EXTRACT
M endefinisikan suatu grup Extract sebagai suatu proses online.
USERID,
M enspesifikasikan
informasi
koneksi
ke
PASSWORD
database.
RMTHOST,
M enspesifikasikan port number dari sistem
MGRPORT
target dan M anager pada sistem target.
RMTTRAIL
M enspesifikasikan lokasi trail dimana data yang diekstrak akan ditulis pada remote system.
PASSTHRU
M engontrol tabel untuk diproses oleh ekstrak data pump dalam mode pass through. Dengan mode ini, proses ekstrak tidak akan melihat definisi tabel dari database ataupun dari data definitions file.
TABLE
M enspesifikasikan tabel-tabel untuk ekstraksi dan mengontrol column mapping dan konversi. Tabel 4.8 Parameter Data Pump
4.5.3.2 Konfigurasi Grup Replicat pada Secondary System 1.
Gambar 4.81 Add Replicat rep_t Sebagai user oraclegg, masuk ke ggsci dan tambahkan replicat pada target database (replicat rep_t). Grup replicat ini akan melakukan replikasi terhadap data yang didapatkan dari extract ext_s di primary system.
196
Berikut adalah deskripsi argumen yang digunakan pada Add Replicat ini. Argumen
Deskripsi M erupakan nama dari grup Repilcat. Dalam penamaan ada beberapa hal yang perlu diperhatikan, yaitu : •
Anda dapat menggunakan hingga 8 karakter
ASCII,
termasuk
karakter-
karakter non-alphanumeric seperti garis bawah (_). Setiap karakter A SCII dapat digunakan,
dengan
panjang
sesuai
dengan yang diizinkan sistem operasi untuk penamaan file. •
Karakter-karakter ASCII berikut tidak diizinkan : { \ / : * ? “ < > | }
•
Pada HP UX, Linux dan Solaris, nama file dapat menggunakan titik dua (☺ atau tanda bintang (*),
walaupun
sebenarnya tidak direkomendasikan. •
Nama grup tidak case-sensitive.
•
Gunakan hanya satu kata.
•
Tidak boleh menggunakan kata “port” pada penamaan menggunakan
grup.
Tetapi
bisa
string “port” sebagai
bagian dari nama grup. Jangan menempatkan nilai numeric pada akhir nama grup, seperti fin1, fin10, dll. Anda dapat menempatkan nilai numerik pada awal nama grup, seperti 1fin, dst. EXTTRAIL
M enspesifikasikan nama trail yang di-create
197
dengan perintah ADD EXTTRAIL. BEGIN
M enspesifikasikan suatu initial checkpoint
<start point>
pada trail. •
Untuk memulai perubahan replikasi dari sejak
grup
di-create dengan
command ADD REPLICAT, gunakan argument NOW. •
Untuk memulai perubahan replicat pada waktu tertentu, gunakan format datetime:yyyy-mm-dd [hh:mi:[ss[.cccccc]]}
CHECKPOINT
M enspesifikasikan bahwa grup Replicat
TABLE
akan menulis checkpoints ke tabel tertentu
pada database. M emerlukan nama owner dan nama tabel. Argument ini melakukan override
semua
spesifikasi
CHECKPOINTTABLE
default
pada
file
GLOBALS. Tabel harus ditambah dengan perintah ADD CHECKPOINTTABLE. Tabel 4.9 Argumen Add Replicat
2.
Gambar 4.82 Parameter Replicat rep_t Setelahnya lakukan edit parameter replicat rep_t yang sudah ditambahkan di langkah sebelumnya. Walau demikian, pengeditan parameter ini juga dapat dilakukan sebelum rep_t ditambahkan.
198
Berikut adalah parameter yang digunakan untuk file replicat rep_t ini. Deskripsi dari parameter-parameter yang digunakan pada file replicat rep_t adalah sebagai berikut. Parameter REPLICAT
Deskripsi M enspesifikasikan suatu grup Replicat sebagai suatu proses online.
ASSUM ETARG
M engasumsikan bahwa tabel-tabel pada source
ETDEFS
dan target memiliki struktur kolom yang sama.
USERID,
M enspesifikasikan
PASSWORD
database.
DISCARDFILE
Terdiri dari record yang tidak boleh diproses.
PURGE
M enghapus file sebelum menulis konten baru.
M EGABYTES
M engatur besar maksimum file tersebut dalam
informasi
koneksi
ke
megabytes. Valid range adalah dari 1-2147 M B. DDLERROR
M engontrol error handling untuk replikasi DDL.
MAP
M enspesifikasikan hubungan antara satu atau lebih tabel-tabel pada source dan target dan mengontrol column mapping dan conversion.
TARGET
M enspesifikasikan tabel atau tabel-tabel dimana akan mengalami perubahan pada target. Tabel 4.10 Parameter Replicat rep_t
4.5.3.3 Konfigurasi Grup Extract pada Secondary System 1. Setelah konfigurasi yang dikerjakan untuk arah dari primary ke secondary system, hal berikutnya yang harus dikerjakan adalah hal yang sebaliknya, yaitu konfigurasi extract replicat dari
199
secondary system ke primary system. Extract replicat dari secondary system ke primary system akan dijalankan ketika diperlukan
saja,
yaitu
ketika primary system
mengalami
kegagalan, dan jikalau kondisi primary system sudah normal, akan dijalankan replikasi dari secondary system ke primary system. Langkah-langkah yang dilakukan juga mirip dengan yang telah dilakukan sebelumnya, hanya dibedakan nama ekstrak, nama file trail, dan nilai-nilai lain untuk parameter-parameter yang ada.
2.
Gambar 4.83 Add Extract ext_t Tambahkan extract pada secondary system (extract ext_t). Grup extract ext_t ini adalah primary extract pada secondary system ini.
3.
Gambar 4.84 Add Exttrail Tambahkan local trail pada extract ext_t dan pastikan bahwa nama local trail tersebut belum terdapat pada directory dirdat pada source dan target system. File trail ini harus berlokasi pada directory dirdat
yang ada pada home directory Oracle
200
Goldengate. Dan jangan lupa penamaan untuk file trail yaitu hanya dua huruf.
4.
Gambar 4.85 Konfigurasi parameter Extract ext_t Edit parameter extract ext_t tersebut seperti pada gambar berikut.
5.
Gambar 4.86 Add Extract pump_t Setelahnya, tambahkan grup data pump pump_t. Data pump berfungsi sebagai ekstrak tambahan yang akan membaca file trail local dan kemudian akan mengirimkan perubahan data yang ditangkap pada file trail tersebut ke file trail dari sistem target. Dalam hal ini yang akan menjadi sistem target adalah primary system.
201
6.
Gambar 4.87 Add rmttrail untuk extract pump_t Tambahkan alamat dari file trail pada sistem primary yang kemudian ditambahkan pada ekstrak pump_t.
7.
Gambar 4.88 Edit parameter pump_t Edit parameter pump_t sesuai gambar di atas.
4.5.3.4 Konfigurasi Grup Replicat pada Primary System 1. Setelah grup Extract pada secondary system sudah dibuat, hal berikutnya yang perlu dikerjakan adalah membuat Replicat yang akan mereplikasi hasil ekstrak dari grup Extract tersebut.
2.
Gambar 4.89 Add Replicat rep_s
202
Hal pertama yang dikerjakan adalah menambahkan replicat pada primary system, caranya sebagai oraclegg masuk ke command interface ggsci dan tambahkan replicat pada source database (replicat rep_s).
3.
Gambar 4.90 Konfigurasi parameter file replicat rep_s Kemudian lakukan edit parameter replicat rep_s dengan command EDIT PARAM ETER REPLICAT rep_s. Kemudian masukkan parameter-parameter seperti pada gambar 4.83.
4.5.3.5 Konfigurasi Replikasi Aktif-Pasif 1. Sampai tahap ini kita sudah mengerjakan konfigurasi untuk extract dan replicat pada primary system, serta extract dan replicat pada secondary system. Hal berikutnya adalah menjalankan extract dan replicat yang sudah ditambahkan tersebut.
2.
Gambar 4.91 S tatus Manager
203
Sebelum menjalankan extract dan replicat, pastikan manager dalam keadaan running. Caranya gunakan command : INFO MANAGER, STATUS M ANAGER, atau bisa juga menggunakan command INFO ALL untuk melihat semua proses pada sistem tersebut.
Gambar 4.92 Start Manager Jika manager belum dalam status running, jalankan M anager dengan command : START M ANAGER. Jika manager sudah di-start tetapi status tetap : “MANAGER IS DOWN!”, cek error dengan cara : VIEW REPORT MGR atau VIEW GGSEVT. Ada banyak kemungkinan error, cek apa yang menjadi error dan selesaikan permasalahan error tersebut. Untuk membantu, bergabunglah pada forum Oracle dan tanyakan di forum akan masalah yang Anda hadapi.
3.
Gambar 4.93 Start Extract ext_s Jika M anager sudah berjalan, jalankan extract ext_s yang ada pada primary system.
204
4.
Gambar 4.94 Info Extract ext_s Pastikan extract ext_s berjalan dengan command : STATUS EXT_S, INFO EXTRACT ext_s, INFO EXTRACT ext_s, DETAIL, atau INFO ALL untuk melihat proses pada sistem tersebut. Jika ext_s dalam status ABENDED atau STOPPED, berarti ada error yang terjadi. Untuk mengetahui error yang terjadi, jalankan command: VIEW REPORT EXT_S atau VIEW GGSEVT. Selesaikan permasalahan error yang terjadi, dan kemudian lakukan START EXTRACT ext_s kembali.
5.
Gambar 4.95 Start Extract pump_s Setelah menjalankan extract ext_s, jalankan juga extract tambahan yang berperan sebagai data pump, yaitu grup extract pump_s.
205
6.
Gambar 4.96 Info Extract pump_s Pastikan extract pump_s berjalan dengan command : STATUS PUM P_S, INFO EXTRACT pump_s, INFO EXTRACT pump_s, DETAIL, atau INFO ALL untuk melihat proses pada sistem tersebut. Jika pump_s dalam status ABENDED atau STOPPED, berarti ada error yang terjadi. Untuk mengetahui error yang terjadi, jalankan command: VIEW REPORT PUM P_S atau VIEW GGSEVT. Selesaikan permasalahan error yang terjadi, dan kemudian lakukan START EXTRACT pump_s kembali.
7.
Gambar 4.97 Start Replicat rep_t Jika grup extract pada primary system sudah berjalan, jalankan replicat rep_t yang ada pada secondary system. Gunakan command : START REPLICAT rep_t.
206
8.
Gambar 4.98 Info Replicat rep_t Pastikan replicat rep_t berjalan dengan command : STATUS REP_T, INFO REPLICAT REP_T, INFO REPLICAT REP_T, DETAIL atau INFO ALL untuk melihat semua proses Oracle Goldengate pada sistem tersebut. Jika replicat tidak dalam keadaan running, cek error yang terjadi dengan menjalankan command : VIEW REPORT REP_T atau VIEW GGSEVT. Selesaikan error yang terjadi dan kemudian jalankan kembali replicat rep_t tersebut.
9.
Gambar 4.99 Start Extract ext_t Sampai di sini kita sudah menjalankan extract replicat dari arah primary system ke secondary system. Hal berikutnya adalah menjalan extract replicat dari arah secondary system ke arah
207
primary system. Jalankan primary extract pada secondary system dengan command : Start extract ext_t.
10.
Gambar 4.100 Info Extract ext_t Pastikan extract
ext_t
berjalan dengan
command
INFO
EXTRACT EXT_T, INFO EXTRACT EXT_T, DETAIL, STATUS EXT_T, atau INFO ALL untuk melihat semua proses yang sedang berjalan pada sistem tersebut. Jika ext_t dalam status ABENDED atau STOPPED, berarti ada error yang terjadi. Untuk mengetahui error yang terjadi, jalankan command: VIEW REPORT EXT_T atau VIEW GGSEVT. Selesaikan permasalahan error yang terjadi, dan kemudian lakukan START EXTRACT ext_t kembali.
11.
Gambar 4.101 Start Extract pump_t
208
Setelah menjalankan extract ext_t, jalankan juga extract tambahan yang berperan sebagai data pump, yaitu grup extract pump_t.
12.
Gambar 4.102 Info Extract pump_t Pastikan extract pump_t berjalan dengan command : STATUS PUM P_T, INFO EXTRACT pump_t, INFO EXTRACT pump_t, DETAIL, atau INFO ALL untuk melihat proses pada sistem tersebut. Jika pump_t dalam status ABENDED atau STOPPED, berarti ada error yang terjadi. Untuk mengetahui error yang terjadi, jalankan command: VIEW REPORT PUMP_T atau VIEW GGSEVT. Selesaikan permasalahan error yang terjadi, dan kemudian lakukan START EXTRACT pump_t kembali.
13.
Gambar 4.103 Start Replicat rep_s
209
Jika primary extract di secondary system sudah berjalan, berikutnya yang harus dikerjakan adalah menjalankan replicat pada secondary system. Lakukan command : start replicat rep_s.
14.
Gambar 4.104 Info Replicat rep_s Pastikan replicat rep_s pada primary system ini berjalan. Caranya gunakan
command
:
INFO
REPLICAT
REP_S,
INFO
REPLICAT REP_S, DETAIL, STATUS REP_S, atau INFO ALL untuk melihat semua proses pada sistem tersebut. Jika replicat tidak dalam keadaan running, cek error yang terjadi dengan menjalankan command : VIEW REPORT REP_S atau VIEW GGSEVT. Selesaikan error yang terjadi dan kemudian jalankan kembali replicat rep_s tersebut.
15.
Gambar 4.105 Info all pada primary system
210
Gambar 4.106 Info all pada secondary system Sampai tahap ini seharusnya extract replicat pada primary dan secondary system telah berjalan. Untuk memastikannya, gunakan perintah INFO ALL pada kedua system untuk melihat apakah ext_s, pump_s, rep_s, ext_t, pump_t dan rep_t dalam keadaan running.
16.
Gambar 4.107 Waktu untuk ekstraksi
Gambar 4.108 Waktu untuk replikasi Jika perintah commit pada source system telah diterima, maka kita bisa mengecek waktu yang diperlukan untuk extract dan replicat.
211
Waktu yang diperlukan untuk ekstraksi 1-4 detik, sedangkan untuk replikasi adalah 2-8 detik. 17. Selama extract dan replicat pada source dan target database berjalan, setiap perubahan pada source database, akan diterima oleh target database.
4.5.4
Evaluasi Setelah melakukan percobaan migrasi dengan menggunakan Oracle SQL
Developer dan replikasi dengan menggunakan Oracle GoldenGate pada rancangan prototipe, waktu yang diperlukan untuk melakukan migrasi database hanggar yang memiliki jumlah record sebanyak 234817 record adalah sekitar 3,5 menit sedangkan untuk melakukan ekstraksi data pada source database memakan waktu 1-4 detik (gambar 4.107)
dan replikasi ke target database
memakan waktu 2-8 detik (gambar 4.108).
4.5.5
S yarat Perubahan DML Untuk kegiatan create dan drop tabel, target akan secara langsung
menyesuaikan dengan source. Namun untuk kegiatan update, delete dan insert, target akan menyesuaikan dengan source jika sudah menemukan perintah commit.
212
4.6 Perancangan Tool Replikasi Perancangan tool replikasi bertujuan untuk membantu user awam dalam menjalankan proses replicat aktif-aktif dan aktif-pasif demi maintenance proses replikasi aktif-aktif maupun replikasi aktif-pasif. Berikut adalah flowchart alur sistem replikasi aktif-aktif pada tool ini.
Ya
Tidak Tidak
Ya Ya
Tidak
Gambar 4.109 Flowchart Proses Replikasi aktif-aktif •
Sistem replikasi pada tool sederhana ini dimulai dari proses login. Jika proses login salah, maka akan ada message error yang diberikan dan user tidak bisa masuk ke tahap berikutnya. Tetapi jika login benar, maka akan melanjutkan ke tahap berikutnya.
•
Tahap berikutnya adalah mengisi data untuk source database atau yang akan berperan sebagai primary system. Sebelum data diisi dengan benar dan
213
lengkap, user tidak akan bisa ke tahap selanjutnya. Dan jika form ini di– close, maka user hanya akan ada pilihan logout, exit, atau mengisi data source dengan benar dan lengkap. •
Jika data untuk source sudah diisi lengkap, maka akan masuk ke tahap berikutnya yaitu mengisi data untuk target database atau yang akan berperan sebagai secondary system. Seperti data source, jika data target belum diisi dengan benar dan lengkap, maka user tidak akan bisa ke tahap selanjutnya. Dan jika form ini di-close, user hanya ada pilihan logout, exit, atau mengisi data target dengan benar dan lengkap.
•
Jika semua data sudah diisi dengan benar dan lengkap, maka akan ada message box yang menginformasikan user bahwa extract dan replicat sedang ditambahkan. Pada tahap ini aplikasi ini akan memanggil command prompt dan mengerjakan batch file yang sudah disediakan. Batch file ini akan memanggil script yang ada pada source dan target system (RedHat Linux). Yang dilakukan adalah membuat parameter file extract replicat dan menambahkannya pada Oracle Goldengate melalui command interface GGSCI.
•
Setelahnya, user bisa menjalankan replikasi aktif-aktif. Ketika user mengklik button replikasi aktif-aktif, maka program akan memanggil kembali batch file yang akan menjalankan M anager, Extract dan Replicat pada primary dan secondary system.
214
Berikut adalah flowchart alur sistem replikasi aktif-pasif tool ini.
Ya
Tidak Tidak
Ya Ya
Tidak
Gambar 4.110 Flowchart Proses Replikasi aktif-pasif •
Sistem replikasi pada tool sederhana ini dimulai dari proses login. Jika proses login salah, maka akan ada message error yang diberikan dan user tidak bisa masuk ke tahap berikutnya. Tetapi jika login benar, maka akan melanjutkan ke tahap berikutnya.
•
Tahap berikutnya adalah mengisi data untuk source database atau yang akan berperan sebagai primary system. Sebelum data diisi dengan benar dan lengkap, user tidak akan bisa ke tahap selanjutnya. Dan jika form ini di– close, maka user hanya akan ada pilihan logout, exit, atau mengisi data source dengan benar dan lengkap.
215
•
Jika data untuk source sudah diisi lengkap, maka akan masuk ke tahap berikutnya yaitu mengisi data untuk target database atau yang akan berperan sebagai secondary system. Seperti data source, jika data target belum diisi dengan benar dan lengkap, maka user tidak akan bisa ke tahap selanjutnya. Dan jika form ini di-close, user hanya ada pilihan logout, exit, atau mengisi data target dengan benar dan lengkap.
•
Jika semua data sudah diisi dengan benar dan lengkap, maka akan ada message box yang menginformasikan user bahwa extract dan replicat sedang ditambahkan. Pada tahap ini aplikasi ini akan memanggil command prompt dan mengerjakan batch file yang sudah disediakan. Batch file ini akan memanggil script yang ada pada source dan target system (RedHat Linux). Yang dilakukan adalah membuat parameter file extract replicat dan menambahkannya pada Oracle Goldengate melalui command interface GGSCI.
•
Setelahnya, user bisa menjalankan replikasi aktif-pasif. Ketika user mengklik button replikasi aktif-pasif, maka program akan memanggil kembali batch file yang akan menjalankan M anager, Extract dan Replicat pada primary dan secondary system.
216
Berikut adalah
tampilan perancangan tool aplikasi Oracle Goldengate
Administrator Tools.
Gambar 4.111 Tampilan Home
Form home ini adalah form parent untuk sub menu lainnya. M enu-menu yang disediakan yaitu File, Edit dan Action seperti pada gambar 4.98. Tetapi menu Edit dan Action tidak akan bisa diakses user jika user belum login dan belum melakukan tahap-tahap berikutnya.
Gambar 4.112 Tampilan menu
217
Gambar 4.113 Tampilan form data sou rce
Form data source ini meminta data ip address, manager port, database sid, user id, dan password untuk database pada source system. Jika user meng-cancel pengisian data source, maka user tidak dapat masuk ke tahap berikutnya. Jika user mengisi data dengan lengkap dan benar, maka user akan bisa masuk ke tahap berikutnya.
218
Gambar 4.114 Tampilan form data target
Gambar 4.101 adalah gambar tampilan form data target. Form ini akan muncul jika user sudah mengisi data untuk data source dengan benar dan lengkap. Form data target ini juga meminta data ip address, manager port, database sid, user id, dan password untuk database pada target system. Jika user meng-cancel pengisian data target, maka user tidak dapat masuk ke tahap berikutnya. Jika user mengisi data dengan lengkap dan benar, maka user akan bisa masuk ke tahap berikutnya.
219
Gambar 4.115 Tampilan menu replicat
Form terakhir yang ada pada tools sederhana ini adalah Form Replicat. Pada form ini user bisa memilih untuk melakukan replikasi secara aktif-aktif atau aktif-standby. Jika user memilih replikasi aktif-aktif, maka selama extract dan replicat pada primary dan secondary system berjalan, segala perubahan yang dikerjakan di source database akan dikenali juga oleh target database. Dan segala perubahan yang dikerjakan di target database akan dikenali di source database. Sedangkan jika user memilih replikasi aktif-pasif, maka hanya perubahan yang dikerjakan di source database yang akan dikenali di target database. Tetapi perubahan pada target database tidak akan dikenali pada source database. Oleh karena itu, jika user menggunakan pilih live-standby, user harus memperhatikan program yang mengakses data pada secondary system, agar tidak ada operasi update, insert, delete, create ataupun drop.