Dari sekian banyak proses maintenance database, salah satunya yakni proses Backup. Backup amat sangat diperlukan untuk berbagai keperluan, terutama ketika hendak dilakukan maintenance lebih lanjut terhadap database seperti: tunning database, analisa data terpisah, atau bahkan keperluan historical terhadap data lampau. Maka proses backup ini adalah proses yang wajib. Karena sifatnya yang begitu critical dalam dukungannya terhadap availibilitas aplikasi fornt-end yang di sokongnya, biasanya database di backup secara berkala.
Jika server kita menggunakan Linux CentOS, ada beberapa cara yang bisa dilakukan untuk melakukan Backup Database. Disini salah satunya saya akan coba menggunakan tool "AutoMySQLBackup" yang akan digunakan untuk mem Backup database MySQL. Berikut tahapannya:
- Download tool AutoMySQLBackup di sourceforge atau disini.
- Copykan file yang sudah di download tadi ke server Linux CentOS, bisa dengan WinSCP
- Login kedalam server, buat direktori untuk menyimpan Data Backup
[root@SVR ~]# mkdir /home/user/backupdb
- Install AutoMySQLBackup
[root@SVR ~]# tar -xzvf automysqlbackup-v3.0_rc6.tar.gz [root@SVR ~]# cd automysqlbackup [root@SVR ~]# ./install.sh
- Buat file / Edit konfigurasi untuk Backup Database, dalam file /etc/automysqlbackup/myserver.conf, tambahkan credential database, seperti dibawah ini:
# Username to access the MySQL server e.g. dbuser CONFIG_mysql_dump_username='root' # Password to access the MySQL server e.g. password CONFIG_mysql_dump_password='password' # Host name (or IP address) of MySQL server e.g localhost CONFIG_mysql_dump_host='localhost' # Backup directory location e.g /backups CONFIG_backup_dir='/home/user/backupdb' # set to (), i.e. empty, if you want to backup all databases CONFIG_db_names=('namadatabase')
- Buat bash script untuk menjalankan backup, disini saya coba buat di direktori /home/user/:
[root@SVR ~]# nano /home/user/mybackupdb.sh
isi file:
#!/bin/sh /usr/local/bin/automysqlbackup /etc/automysqlbackup/myserver.conf chown root.root /home/user/backupdb* -R find /home/user/backupdb* -type f -exec chmod 400 {} \; find /home/user/backupdb* -type d -exec chmod 700 {} \;
- Ubah hak akses dengan chmod +x mybackupdb.sh. Lalu coba jalankan secara manual bash script tersebut:
[root@SVR user]# ./mybackupdb.sh
- Cek file hasil backup
[root@SVR ~]# ls /home/user/backupdb daily fullschema latest monthly status tmp weekly
[root@SVR ~]# ls /home/user/backupdb/daily/namadatabase/ daily_namadatabase_2016-08-10_10h08m_Wednesday.sql.gz [root@SVR ~]#
- Buat schedule dengan crond
[root@SVR ~]# crontab -e
isi crond:
45 23 * * * /home/user/mybackupdb.sh
- Jangan lupa untuk restart service crond:
[root@SVR ~]# service crond restart
Dengan konfigurasi dasar tersebut, maka Database MySQL akan dibackup secara otomatis pada pukul 23:45 malam setiap hari nya. Ini bisa disesuaikan dan dikembangkan sesuai kebutuhan kita, misalnya dengan mem Backup semua database, dengan mengirimkan notifikasi via email, dan lain-lain. Selamat mencoba.
Belajar Dunia Komputer
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapus