Lewati ke konten utama

Manual Database Backups

Platform menyediakan semua stack database bersertifikasi dengan skrip yang mudah dan nyaman untuk melakukan backup data yang tersimpan. Dengan demikian, proses ini sederhana hanya dengan menyediakan parameter yang diperlukan dan dapat diselesaikan dalam beberapa menit. Di sini, tidak diperlukan pengetahuan khusus – cukup ikuti langkah-langkah pengaturan untuk mengonfigurasi ekspresi cron yang sesuai.

Selain itu, kami akan menunjukkan cara bekerja dengan backup yang dibuat:

Untuk tutorial ini, kami akan menggunakan database MySQL sebagai contoh. Namun, langkah-langkah yang diperlukan serupa untuk semua database lainnya.

Backups Scheduling

Mari kita gunakan skrip backup default untuk mengotomatisasi proses pembuatan backup dan mengonfigurasinya sesuai kebutuhan spesifik Anda (misalnya, frekuensi, jumlah backup lama yang disimpan, dll.). Di sini, jika Anda belum memiliki environment dengan database, ikuti panduan Database Hosting untuk membuatnya.

  1. Kode sumber skrip dapat dilihat langsung di dashboard. Klik tombol Config di sebelah database Anda untuk membuka file manager bawaan dan temukan file /var/lib/jelastic/bin/backup_script.sh.

    database backup script
    peringatan

    Skrip backup tidak tersedia untuk stack Redis, yang merupakan penyimpanan key-value, biasanya digunakan sebagai cache.

  2. Untuk mengotomatisasi eksekusi skrip, kita akan menggunakan cron scheduler yang tersedia di dalam container secara default. Buka file /var/spool/cron/mysql dan berikan ekspresi cron dalam format berikut:

    {frequency} {path-to-script} {script-parameters}
    database cron config file

    Di sini, Anda dapat menggunakan contoh yang dikomentari sebagai template untuk menentukan parameter yang diperlukan:

    • {frequency} - menentukan waktu eksekusi skrip (lihat panduan di atas untuk detailnya), misalnya */10 * * * * untuk membuat backup setiap 10 menit

    • {path-to-script} - menunjukkan skrip yang diperlukan (skrip backup default tersedia di /var/lib/jelastic/bin/backup_script.sh)

    • {script-parameters} - menyediakan parameter khusus untuk skrip yang ditentukan; berikut adalah parameter yang tersedia dalam kasus kami:

      • -m {mode} untuk melakukan backup seluruh atau sebagian database (-m dumpall atau -m dump secara berturut-turut)
      • -c {count} untuk menentukan jumlah backup lama yang disimpan (misalnya, -c 3 untuk menyimpan 3 backup lama bersama dengan yang terbaru)
      • -u {user} dan -p {password} untuk memberikan kredensial akses untuk database Anda (dapat ditemukan di email setelah pembuatan database)
      peringatan

      Jika {password} Anda mengandung karakter khusus, maka harus disertakan dalam tanda kutip ganda. Juga, karena spesifikasi cron, Anda perlu memberikan escape tambahan untuk simbol % dengan menambahkan backslash sebelum simbol tersebut, misalnya -p "passw\%rd".

      • -d {databases} dan -t {tables} untuk secara opsional menentukan daftar database (-d db1[,db2,db3….]) atau tabel di dalam database (-d db -t table1[,table2,table3….]) untuk dibackup
  3. Sebagai contoh, jika Anda ingin melakukan backup seluruh database setiap 10 menit dengan menggunakan skrip default, maka stringnya harus seperti berikut:

    */10 * * * * /var/lib/jelastic/bin/backup_script.sh -m dumpall -c 3 -u root -p passw0rd
    cron expression for DB backup script

    Simpan pengaturan untuk menerapkannya.

  4. Untuk menyimpan data di node lain atau server remote, Anda dapat mengonfigurasi mount point yang sesuai untuk database Anda.

    store backups on remote server
    peringatan

    Data yang ada di folder mount point akan digantikan dengan file dari direktori remote.

    Sebagai alternatif, Anda dapat membuat skrip backup khusus, yang dapat dijalankan dari server remote (detail host database, pengguna, dan password diperlukan untuk membuat koneksi).

Check Backups

Tunggu hingga skrip dieksekusi (tergantung pada frekuensi cron yang dikonfigurasi) dan navigasikan ke folder /var/lib/jelastic/backup.

check database backup files

Jika operasi backup berhasil, Anda akan melihat arsip .bz2 yang sesuai di dalam direktori.

Download Backup

Ada beberapa opsi untuk mengunduh file dari container:

  1. Cara paling mudah adalah menggunakan configuration file manager langsung di dashboard.

    download backups with dashboard

    Temukan file yang diperlukan, arahkan kursor ke atasnya, dan pilih Download dari menu konteks.

  2. Opsi lain adalah menggunakan koneksi SFTP/FISH protocol.

    download backups with SFTP FISH protocols

    Detail akses yang diperlukan dapat dilihat di dashboard.

  3. Anda juga dapat memasang FTP add-on untuk database Anda agar dapat mengelola file melalui FTP.

    peringatan

    Alamat Public IP diperlukan untuk opsi ini. Jika diperlukan, Public IP akan secara otomatis ditambahkan ke node selama instalasi add-on.

    database ftp addon

    Berdasarkan preferensi Anda, Anda dapat memilih salah satu opsi yang ditawarkan.

Restore Database

Jika diperlukan, Anda dapat dengan mudah memulihkan database dari backup. Untuk contoh MySQL kami, langkah-langkah berikut diperlukan:

  1. Akses panel phpMyAdmin dengan kredensial dari email yang Anda terima setelah pembuatan node DB.

    email with DB credentials
  2. Arahkan ke tab Import, centang opsi Browse your computer, dan gunakan tombol Choose File untuk mengunggah backup yang diperlukan.

    import backups via DB admin panel

    Klik Go di bagian bawah halaman.

  3. Ketika proses impor berhasil diselesaikan, Anda akan melihat notifikasi yang sesuai di panel admin.

    database successfully restored from backup

Itu saja! Sekarang, Anda bisa yakin bahwa semua data Anda disimpan secara berkala dan, jika diperlukan, dapat dipulihkan atau digunakan kembali.

Baca Juga