Backup Database MySQL Dengan Metode Replikasi


ri32_mysql_backup

Pendahuluan

Setiap organisasi yang memiliki database perlu melakukan aktivitas backup secara periodik. Sebagai bentuk antisipasi jika terjadi sesuatu yang tidak diinginkan. 2 metode yang pernah saya terapkan adalah metode dump file dan metode replikasi.

Metode Dump File .SQL

Metode ini menggunakan script tertentu dan fungsi mysqldump sehingga terbentuk sebuah file dengan penamaan sesuai dengan periode waktu membackup database. Sedangkan untuk penjadwalannya memanfaatkan fasilitas window scheduler. Untuk tutorialnya bisa dibaca di blog berikut ini membuat-jadwal-backup-database-otomatis.

Namun saya menemukan kelemahan dari metode ini. Setelah berjalan beberapa lama file .SQL yang tercipta di PC backup terus terbentuk. bayangkan jika setiap filenya berukuran 2GB dan dibackup setiap hari. Maka perlu setiap minggu dilakukan penghapusan file di PC backup.

Ditambah, jika terjadi kesalahan atau error sistem sehingga perlu adanya tindakan restore database maka kita harus mengupload file database yang telah kita backup sebelumnya. dari pengalaman saya untuk import database jika terdapat field yang menampung jenis data BLOB. saya mengalamasi kesulitan karena didalam field BLOB terdapat karakter tertentu sehingga proses import selalu gagal. Sehingga saya menggunakan metode yang lain yaitu replikasi database.

Metode Replikasi Database

Replikasi database adalah seperangkat teknologi yang digunakan untuk menyalin dan mendistribusikan data dari satu database ke database yang lain. Dan selanjutnya, mensinkronisasikan antar database untuk menjaga konsistensi.

Dalam implementasi metode ini saya masih menggunakan PC backup sebagai SLAVE yang menampung data dari Database Server sebagai MASTER. Namun bedanya data dari master tidak ditampung ke dalam dump file .SQL tapi langsung disimpan ke database lokal yang ada di PC backup.

Dengan menggunakan metode ini, tidak perlu banyak file yang terbentuk dari proses backup database. cukup sediakan satu database lokal yang bertindak sebagai SLAVE. yang menampung data dari MASTER secara periodik. karena data nya sudah di sinkronisasi antar 2 database. Sehingga jika terjadi kerusakan data dapat dengan cepat di import dari SLAVE ke MASTER. untuk tutorialnya bisa dibaca di blog berikut ini synchronize-database-mysql-menggunakan.

Namun saya menemukan kelemahan dari metode ini, jika ternyata terdapat kesalahan data di database server dan databasenya sudah di sinkronisasi dengan database lokal secara periodik. maka jika kita ingin mengimport database di SLAVE ke MASTER datanya telah ikut terkontaminasi.

Penutup

Setiap metode ada kekurangan dan kelebihannya. tinggal kita memilih apakah menggunakan salah satu metode atau menggunakan kombinasi 2 metode.

Sekian artikel dari saya, semoga bermanfaat untuk teman-teman dan anda semua…aamiin

Bogor, 02-04-2018

KangAgus

 

Advertisements

5 Metode penulisan versi Software


software-417880_640

 

Latar Belakang

Kita sering mengunakan software untuk memberikan solusi dan membantu pekerjaan kita sehari-hari. Software-software tersebut kadang memiliki versi yang menunjukan peningkatan dari fitur atau kemampuannya. Artikel kali ini saya akan sharing informasi mengenai cara penulisan versi software yang memiliki beberapa metode.

1) Metode Tanggal bulan Tahun

Teknik ini dibagi lagi menjadi 3 yaitu metode penulisan tahun saja, tahun -bulan, dan tahun-bulan-tanggal.

Metode Tahun (YYYY)

Metode ini sering dipakai oleh software closed source. Contohnya adalah Tune Up Utilites atau antivirus. Cara ini sangat praktis dan mudah diingat oleh user. Contoh produk beserta versi nya :

  • Microsoft Office 2007
  • Visual studio 2010
  • TuneUp Utilities 2009
  • Microsoft Windows 98

Metode Tahun Bulan (YY.MM)

  • Metode ini dipakai oleh ubuntu. Contohnya adalah ubuntu 13.10.
  • Artinya ubuntu yang dirilis pada tahun 2013 di bulan 10.

Metode Tahun bulan tanggal (yyyy-mm-dd).

  • Metode ini sering dipakai untuk software yang belum stabil, biasanya bisa dirilis kapan saja, bahkan bisa tiap minggu atau tiap hari.
  • Contoh software yang memakai penamaan versi seperti ini adalah Wine di versi versi awal. Misalkan Software Wine 20030118

2) Metode X.Y.Z

Metode ini adalah yang Terpopuler, namun cara ini juga punya banyak variasi. Berikut ini adalah variasinya

Metode X

  • Cara ini menuliskan versi software dengan versi integer. Misalkan versi pertama adalah versi 1, maka versi selanjutnya adalah versi 2.
  • Cara ini sering dipakai oleh Game, Misalkan Game Age Of Empire I, Age Of Empire II, atau BatleField 4, Sim City 2 dan sebagainya.

Metode X.Y

Metode ini cukup populer, Alasan utama, jika setiap rilis software baru, harus naik 1 , maka versi software akan naik dengan sangat cepat. Metode ini juga punya aturan. Misalkan CandralabCMS 1.0, artinya versi tersebut adalah versi pertama. Jika ada perbaikan kecil atau penambahan fitur yang tidak terlalu signifikan, maka versi selanjutnya adalah candralabCMS1.1.

Perubahan poin X terjadi jika ada perubahan besar besaran di software yang menyebabkan tidak kompatibel dengan versi sebelumnya Contohnya adalah Windows. Secara internal, windows memakai metode pemversian seperti ini. Berikut ini adalah daftar versi internal Windows.

  • Windows 5.0 (Windows 2000)
  • Windows 5.1 (Windows XP)
  • Windows 5.2 (Windows 2003)
  • Windows 6.0 (Windows Vista)
  • Windows 6.1 (Windows 7)
  • Windows 6.2 (Windows 8)
  • Windows 6.3 (Windows 8.1)

Microsoft menggunakan dua cara pemversian. Versi internal untuk developer dan versi external seperti Windows Vista untuk user. Perhatikan pola versi internalnya. Tampak bahwa Windows vista,7 dan 8 mempunyai nilai X yang sama yang artinya mereka masih satu keluarga.

Bahasa mudahnya, jika sebuah driver atau software berjalan di vista, maka dijamin (secara teori) akan jalan di Windows 8.1 ). Namun jika sebuah software berjalan di Windows XP, belum tentu akan berjalan di windows vista ketas, kenapa? karena versi Mayor (nilai X nya) sudah berbeda.

Metode X.Y.Z

Metode X.Y.Z punya aturan sbagai berikut

  • X versi Mayor (Perubahan arsitektur/fitur besar besaran)
  • Y versi Minor (Penambahan beberapa fitur )
  • Z versi perbaikan/patch/bugfix. (perbaikan /bugfix,security fix dsb).

Contoh software yang memakai teknik ini adalah Android. Contoh versi android

  • Android 2.2.3
  • Android 2.3.7
  • Android 3.1.1
  • Androdi 4.1.2

Namun, demi alasan pemasaran, versi ini hanya dipakai oleh para Programmer, Android menggunakan teknik penamaan makanan penutup untuk user untuk mempermudah pemasaran. Bagian penamaan seperti ini akan dibahas dibawah.

3) Metode X.Y.Z.P

Aturan dari metode ini adalah

  • X Mayor version
  • Y Minor Version
  • Z Micro Version
  • Patch /build

Software yang menggunakan teknik ini adalah Linux. Mengapa linux sampai menggunakan 4 versi? karena linux adalah proyek yang sangat besar, source codenya saja sampai jutaan baris, makanya perbaikan kode atau security fix ada di point P. Walaupun sudah berumur lebih dari 14 tahun, Versi major Linux baru 3. Contoh versi linux adalah Linux 2.6.39.4.

4) Metode Alpha, Beta, RC , Final

Metode ini tidak bisa berdiri sendiri, biasanya di kombinasikan dengan teknik X.Y.Z atau YY-MM seperti ubuntu. 4 nama diatas adalah fase dalam pengembangan software. penjelasannya adalah sebagai berikut :

  • Alpha Versi awal dari software, baru dicoba di lingkungan internal developer atau perusahaan.
  • Beta versi awal dari software, sudah diperkenalkan untuk umum,namun tidak disarankan dipakai untuk keperluan Produksi karena belum stabil (gampang crash).
  • RC (release candidate) adalah tahapan sebelum rilis, biasanya ditujukan untuk memastikan bahwa software memang sudah stabil, biasanya versi RC tidak jauh berbeda dengan versi finalnya.
  • Final release, Software sudah stabil dan siap dipasarkan atau di rilis untuk pemakai umum.

5) Metode versi dengan pola nama tertentu

Teknik ini biasanya dipakai untuk pemasaran, tujuan utamanya, orang awam non IT mudah mengucapkan dan mengingatnya, 3 Software populer yang menggunakan nama ini adalah Mac OS X, Ubuntu dan Android. Ubuntu menggunakan nama hewan khas Afrika, Mac OS menggunakan nama keluarga kucing dan android menggunakan nama makanan penutup yang manis.

  • Ubuntu Saucy Salamander (Ubuntu 13.10)
  • Ubuntu Raring Ringtail (Ubuntu 13.04)
  • Android Kitkat (Android 4.4)
  • Android Jelly Bean (Android
  • Mac OS X Tiger ( Mac OS X 10.4)
  • Mac OS X Lion (Mac OS X 10.7)

Dari semua contoh diatas, ternyata kebanyakan Programmer menggunakan kombinasi pem-versian software. Tujuan utamanya adalah memudahkan mengingat versi baik untuk developer atau user/consumer. Sekarang giliran anda, Mau pakai metode yang mana?

Referensi :

http://www.candra.web.id/2014/02/20/metode-penulisan-versi-software

Sekian sharing artikel dari saya, Semoga bermanfaat untuk teman-teman dan anda semua…aamiin

Cilangkap, 25-11-2014

KangAgus

%d bloggers like this: