2. Open a connection in Workbench and click on Online Backup in order to configure the installation plath of MySQL Enterprise Backup and credentials of a user who is going to generate the backups.
3. Define the configuration params for generating backups, specifically: what, where and when are you going to generate a backup? This page has three sections:
Backup Jobs (1): in this panel you can manage the configuration of backup jobs (2). Right click on (3) in order to edit, delete or execute a selected backup.
This menu has also options to: Execute Backup to Image File allowing to save a backup in a single file; Copy Backup Command to Clipboard which generate a command for executing a backup and copy it in memory.
Backup Job Details (4): show details information of a selected backup backup in (1).
Recent Activity (5): visualize information about the operations performed on the server. In order to view each backup log, do a right click on the required.
4. Configure un nuevo backup haciendo clic en (2). Esto lo llevará a una nueva ventana de configuración como la que se muestra en seguida. En (5) defina el nombre del backup y (6) el momento en el que quiere programar sus backups.
Programación de Backups
Cada Job se programará como una tarea programada del sistema operativo, así que si requiere mayor configuración sobre la programación de su backup, esta debe ser definida en la tarea programada que se genera. En sistemas operativos Windows está disponible en el Programador de Tareas.
Catatan ini akan mencakup contoh kecil replikasi database dengan MariaDB, satu master akan mengirim informasi ke slave tunggal. Untuk proses kerjanya, memerlukan 2 alamat IP, satu server master dan lainnya slave.
Dalam hal ini, saya akan menggunakan alamat IP sebagai berikut :
10.19.19.251 – sebagai Database Master
10.19.19.74 – sebagai Database Slave
Persiapan
Catatan ini mengasumsikan Anda telah memiliki 2 buah VM dan memiliki akses sudo terhadap 2 VM tersebut. Sistem Operasi yang akan saya gunakan adalah Ubuntu 16.04 server, MariaDB telah terinstall dan belum dikonfigurasi. Anda dapat menggunakan berbagai teknologi untuk membuat VM, baik menggunakan VirtualBox, Libvirt, Proxmox VE, atau bahkan VMware.
Jika MariaDB belum terinstall, Anda dapat menginstallnya dengan perintah ini :
$ sudo apt install mariadb-server mariadb-clientLangkah 1: Atur Konfirugasi Database Master
Buka konfigurasi MariaDB pada server master:
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnfSetelah masuk dalam berkas tersebut, ubah beberapa parameter berikut :
Pertama cari baris seperti berikut,
bind-address = 127.0.0.1Ganti alamat IP bawaan tersebut dengan alamat IP servernya, dalam hal ini adalah 10.19.19.251:
bind-address = 10.19.19.251Selanjutnya konfigurasikan server-id. Konfigurasi ini terletak pada bagian [mysqld]. Anda dapat memilih angka berapa saja untuk konfigurasi ini, namun angkanya harus unik dan tidak boleh ada yang sama antara kelompok replikasi. Untuk database master ini cukup gunakan 1 saja. Pastikan baris berikut tidak diberi komentar (tanda # di awal baris).
server-id = 1Selanjutnya baris log_bin. Semua rincian informasi replikasi akan disimpan di sini. Database slave akan menyalin semua perubahan yang terdaftar dalam log ini. Untuk langkah ini, cukup hapus tanda # di depan log_bin.
log_bin = /var/log/mysql/mysql-bin.logAnda juga perlu mendefinisikan database apa yang akan direplikasi di server slave. Anda dapat menyertakan lebih dari satu database dengan mengulangi baris ini untuk setiap database yang diperlukan.
binlog_to_db = puskoappSimpan berkas konfigurasi tersebut dengan menekan Ctrl+X, lalu Y, dan Enter. Restart MariaDB.
Langkah berikutnya, masuk ke shell MariaDB.
$ sudo -i # mysql -u root -pBuat database yang akan direplikasi, lewati langkah ini jika sudah ada databasenya.
MariaDB [(none)]> CREATE DATABASE puskoapp;Beri akses slave dengan mengetikkan perintah berikut pada shell MariaDB.
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf0Nama pengguna yang digunakan adalah slave_user dan passwordnya adalah rahasia. Nama pengguna dan sandi tersebut akan digunakan oleh slave untuk mengakses dan mereplikasi database dari master. Ganti sesuai yang Anda inginkan. Lalu,
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf1Buka tab/jendela baru untuk melakukan langkah berikutnya. Pada tab baru tersebut, masuk kembali ke MariaDB dan gunakan database yang akan direplikasi.
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf2Jalankan perintah berikut untuk mencegah (baca: mengunci) perubahan pada database tersebut.
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf3Lalu ketikkan :
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf4Jika berhasil, akan muncul tabel kira-kira sebagai berikut:
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf5Ini posisi di mana database slave akan mulai mereplikasi. Catat nomor ini, karena akan digunakan pada langkah berikutnya. Jika Anda melakukan perubahan pada jendela yang sama, database tersebut akan secara otomatis terbuka kuncinya.
Untuk alasan inilah, Anda perlu membuka tab/jendela baru untuk melanjutkan ke langkah berikutnya.
Saat database sedang terkunci, ekspor database menggunakan mysqldump pada jendela baru. (pastikan perintah ini dijalankan pada shell bash, bukan MariaDB).
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf6Sekarang, kembali ke jendela sebelumnya, buka kunci database (buat agar dapat diubah kontennya).
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf7Keluar dari shell MariaDB dengan mengetikkan exit; atau \q
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf8Konfigurasi pada master telah selesai.
Langkah 2: Konfigurasi pada Database Slave
Setelah konfigurasi database master selesai, sekarang konfigurasikan database slave.
Masuk ke server slave, buka shell MariaDB dan buat database baru dengan nama yang sama, lalu keluar.
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf9Import database yang sebelumnya diekspor dari database master.
bind-address = 127.0.0.10Selanjutnya konfigurasikan seperti yang dilakukan pada master.
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnfPastikan beberapa konfigurasi berikut diatur dengan tepat. Pertama adalah server-id. Seperti yang disebutkan sebelumnya, nomor server-id di sini harus unik. Tidak boleh ada yang sama antara satu kelompok master-slave. Karena bawaannya adalah 1, pastikan ubah dengan angka yang berbeda.
bind-address = 127.0.0.12Pastikan setidaknya kriteria konfigurasi berikut terisi dengan tepat:
bind-address = 127.0.0.13Anda perlu menambahkan baris relay-log secara manual. Baris tersebut tidak ada sebelumnya. Setelah perubahan konfigurasi telah dibuat sebagaimana diinginkan, simpan dan keluar dari berkas konfigurasi.
Restart MariaDB sekali lagi.
$ sudo systemctl restart mysqlLangkah berikutnya, aktifkan replikasi dengan shell MariaDB. Buka shell MariaDB sekali lagi dan ketikkan perintah berikut, ubah-suaikan dengan konfigurasi Anda:
bind-address = 127.0.0.15Perintah tersebut menyelesaikan beberapa peperjaan sekaligus:
1). ini menunjuk server saat ini sebagai slave dari master server kita yang beralamat di 10.19.19.251,
2). menyediakan kredensial masuk yang tepat pada server,
3). memungkinkan slave tahu dari mana harus mulai melakukan replikasi; master log file dan log posisi berasal dari angka yang ditulis sebelumnya.
Dengan begini, Anda telah mengonfigurasi replikasi database master dan slave. Lalu aktifkan server slave:
bind-address = 127.0.0.16Anda dapat melihat detil informasi replikasi slave dengan mengetikkan perintah ini. Pilihan \G di belakang perintah berikut untuk menata teks agar dapat lebih mudah dibaca.
bind-address = 127.0.0.17Jika ada masalah koneksi, Anda dapat menjalankan slave dengan perintah skip:
bind-address = 127.0.0.18Selesai.
Cek Hasilnya
Pada database master, buatlah sebuah tabel, misal dengan perintah berikut :
bind-address = 127.0.0.19Lalu periksa pada database slave. Jika berhasil, sebuah tabel akan dibuat di sana, sama persis dengan yang di master: