Berikut adalah contoh file symmetric.properties
untuk mengonfigurasi SymmetricDS agar terhubung dengan dua node: satu di XAMPP versi 7.4 pada Ubuntu 24.10 LTS dengan IP 192.168.101.72 dan database dbopensid1
, dan satu lagi di node lainnya dengan IP 192.168.101.77 dan database dbopensid2
.
Contoh symmetric.properties
# Lokasi file log
log.level=INFO
log.file.name=logs/symmetricds.log
# Nama untuk grup replikasi
engine.name=my_engine
# Nama node ini (misalnya node pertama)
node.id=node_1
node.group.id=my_group
node.type=source # node_1 bertindak sebagai source (pengirim data)
# Konfigurasi database untuk node_1 (di XAMPP dengan database dbopensid1)
db.driver=com.mysql.cj.jdbc.Driver
db.url=jdbc:mysql://192.168.101.72:3306/dbopensid1?useSSL=false&serverTimezone=UTC
db.user=root
db.password=yourpassword
# URL untuk sinkronisasi dan pendaftaran node_1
sync.url=http://192.168.101.72:31415/sync
registration.url=http://192.168.101.72:31415/registration
# Nama node kedua (misalnya node_2)
node.id=node_2
node.group.id=my_group
node.type=target # node_2 bertindak sebagai target (penerima data)
# Konfigurasi database untuk node_2 (di node lainnya dengan database dbopensid2)
db.driver=com.mysql.cj.jdbc.Driver
db.url=jdbc:mysql://192.168.101.77:3306/dbopensid2?useSSL=false&serverTimezone=UTC
db.user=root
db.password=yourpassword
# URL untuk sinkronisasi dan pendaftaran node_2
sync.url=http://192.168.101.77:31415/sync
registration.url=http://192.168.101.77:31415/registration
# Pengaturan replikasi umum
registration.required=true
sync.batch.size=1000
# Menjaga koneksi sinkronisasi tetap aktif dan mengoptimalkan batch
sync.delay=1000
sync.max.time=60000
sync.interval=300000 # 5 menit
Penjelasan Properti:
-
log.level: Menentukan tingkat logging.
INFO
mencatat informasi penting tentang replikasi, tetapi jika Anda membutuhkan informasi lebih mendetail, gunakanDEBUG
- log.file.name: Lokasi file log untuk mencatat semua kegiatan SymmetricDS.
-
engine.name: Nama untuk engine SymmetricDS ini. Gantilah
my_engine
dengan nama sesuai dengan proyek atau aplikasi Anda. -
node.id: ID unik untuk setiap node.
node_1
untuk node pertama dannode_2
untuk node kedua. Pastikan ID ini berbeda antara node yang satu dengan yang lainnya. -
node.group.id: ID grup yang digunakan untuk mengelompokkan node yang saling berhubungan dalam sistem replikasi. Kedua node dalam grup yang sama menggunakan ID grup yang sama, dalam hal ini
my_group
. - node.type: Tipe node. Pada contoh ini, node_1 adalah source (pengirim data) dan node_2 adalah target (penerima data).
-
db.driver: Menentukan driver JDBC yang digunakan untuk menghubungkan ke MySQL. Di sini menggunakan
com.mysql.cj.jdbc.Driver
yang cocok untuk MySQL 5.7 dan yang lebih baru. -
db.url: URL JDBC untuk menghubungkan ke database di setiap node. Misalnya:
- Untuk node_1, URL JDBC adalah
jdbc:mysql://192.168.101.72:3306/dbopensid1?useSSL=false&serverTimezone=UTC
. - Untuk node_2, URL JDBC adalah
jdbc:mysql://192.168.101.77:3306/dbopensid2?useSSL=false&serverTimezone=UTC
.
Gantilah
dbopensid1
dandbopensid2
dengan nama database yang sesuai untuk setiap node. - Untuk node_1, URL JDBC adalah
-
db.user: Nama pengguna untuk mengakses MySQL. Di XAMPP, pengguna default adalah
root
. - db.password: Password untuk pengguna MySQL. Pastikan Anda mengisi dengan password yang sesuai, atau kosongkan jika menggunakan pengguna tanpa password (meskipun disarankan untuk selalu menggunakan password yang aman).
- sync.url dan registration.url: URL untuk sinkronisasi dan pendaftaran node.
- Untuk node_1, URL adalah
http://192.168.101.72:31415/sync
danhttp://192.168.101.72:31415/registration
. - Untuk node_2, URL adalah
http://192.168.101.77:31415/sync
danhttp://192.168.101.77:31415/registration
.
-
registration.required: Jika disetel ke
true
, node harus mendaftar pada server utama SymmetricDS sebelum dapat memulai sinkronisasi. -
sync.batch.size: Ukuran batch sinkronisasi data, dalam hal ini diatur ke
1000
. Ini mengontrol seberapa banyak data yang akan diproses dalam satu batch sinkronisasi. - sync.delay: Menentukan penundaan sinkronisasi antara batch dalam milidetik. Penundaan ini dapat digunakan untuk mengoptimalkan penggunaan sumber daya.
- sync.max.time: Durasi maksimal untuk transaksi sinkronisasi dalam milidetik. Di sini diatur ke 60 detik (60000 milidetik).
-
sync.interval: Menentukan interval waktu antara proses sinkronisasi di setiap node dalam milidetik. Di sini diatur ke
300000
milidetik (5 menit).
Langkah-langkah Tambahan:
-
Periksa Koneksi Database: Sebelum memulai proses replikasi, pastikan Anda dapat terhubung ke database
dbopensid1
di node_1 dandbopensid2
di node_2. Gunakan alat seperti phpMyAdmin atau MySQL Workbench untuk memeriksa konektivitas. -
Periksa Pengaturan MySQL di XAMPP:
- Pastikan MySQL di XAMPP sudah diatur agar menerima koneksi dari IP selain
localhost
dengan mengubah pengaturanbind-address
di filemy.cnf
ataumy.ini
. - Pastikan port 3306 (default untuk MySQL) dan 31415 (untuk SymmetricDS) terbuka di firewall.
- Pastikan MySQL di XAMPP sudah diatur agar menerima koneksi dari IP selain
-
Tes SymmetricDS:
- Setelah file
symmetric.properties
diatur, jalankan SymmetricDS pada kedua node dan pastikan bahwa proses sinkronisasi berhasil dilakukan antara node_1 (sebagai sumber) dan node_2 (sebagai target).
- Setelah file
Dengan file symmetric.properties
ini, Anda akan dapat mengonfigurasi SymmetricDS untuk menghubungkan dua node yang memiliki database masing-masing, dan melakukan replikasi data antara mereka.
0 Comments