Cara Backup dan Restore Database MySQL dengan Mysqldump

Apa itu Mysqldump?

Mysqldump adalah alat bawaan dari MySQL yang berfungsi untuk mencadangkan (backup) database. Alat ini bekerja dengan cara yang cukup sederhana: Anda hanya perlu menjalankan perintah atau query SQL Dump, maka database akan terbackup.

Meskipun sederhana, alat dengan tampilan CLI (Command Line Interface) ini sangat dapat diandalkan. Hal ini karena Mysqldump menyediakan berbagai variasi perintah backup database yang dapat dijalankan sesuai dengan kebutuhan pengguna.

SQL Dump ini kompatibel baik untuk database MySQL yang masih offline di localhost maupun yang sudah online di layanan hosting. Namun, sangat disarankan untuk menggunakan Mysqldump pada database website yang sudah online.

Alasan Menggunakan Mysqldump untuk Database Online

1. Website Online Lebih Rawan Terkena Gangguan

Website yang dapat diakses secara online lebih rentan terhadap kerusakan database dibandingkan dengan website offline. Salah satu alasan utamanya adalah serangan SQL Injection. Dalam hal ini, backup database melalui Mysqldump adalah tindakan preventif yang sangat dianjurkan untuk melindungi database.

2. Kemudahan dalam Pencadangan Database

SQL Dump merupakan opsi pencadangan database yang jauh lebih ringkas dibandingkan dengan menggunakan fitur backup hosting seperti JetBackup. Anda hanya perlu mengeksekusi satu atau dua baris query SQL saja untuk mencadangkan database.

Sintaks Perintah SQL Dump

Secara umum, perintah atau query SQL Dump untuk mencadangkan database adalah sebagai berikut:

bash<br /> mysqldump -u [database_username] -p [options] [database_name] > [dumpfilename.sql]<br />

Berikut adalah keterangan masing-masing bagian dari perintah tersebut:

  1. mysqldump – Awalan query untuk melakukan SQL Dump.
  2. -u [database_username] – Nama pengguna untuk mengakses database MySQL.
  3. -p – Password pengguna MySQL sebagai validasi akses database.
  4. [options] – Variasi sintaks mysqldump, contohnya –all-databases untuk mencadangkan semua database.
  5. [database_name] – Nama database MySQL yang hendak dicadangkan.
  6. ‘>’ – Karakter ‘>’ menunjukkan mysqldump untuk mengeksekusi perintah backup.
  7. [dumpfilename.sql] – Nama file backup database, lengkap dengan ekstensinya.

    Untuk memahami lebih lanjut, mari kita langsung jajal cara dump Database MySQL di poin berikutnya!

    Cara Membuat Backup MySQL dengan Mysqldump

    Ada banyak variasi cara mencadangkan MySQL dengan Mysqldump. Anda bisa mencoba salah satunya sesuai dengan kebutuhan, atau menjajal semuanya sekaligus agar semakin mahir. Namun yang jelas, jangan lewatkan tahap persiapan di bawah ini.

    Persiapan Cara Backup MySQL dengan SQL Dump

    Kali ini, kita akan mempraktikkan cara SQL Dump untuk database website yang sudah dihostingkan. Maka dari itu, persiapkanlah beberapa hal berikut:

  8. Layanan Hosting dengan Akses SSH – Berhubung query Mysqldump ini akan dieksekusi di Terminal cPanel, maka pastikan dulu hosting Anda mendukung akses SSH. Misalnya, paket Personal Unlimited Hosting sobatcloud.com yang mendukung ketentuan tersebut.
  9. Database MySQL beserta Username dan Passwordnya – Pastikan Anda sudah pernah membuat database MySQL di hosting. Kemudian, catat nama database serta username dan passwordnya. Jika belum ada database, buat terlebih dahulu di cPanel.

    Setelah menyiapkan keduanya, mari kita praktikkan cara dump database MySQL dengan SQL Dump satu per satu.

    Cara Backup Satu Database MySQL

    Cara ini bertujuan untuk mencadangkan satu database spesifik saja. Berikut langkah-langkahnya:

  10. Akses cPanel via browser dengan menambahkan /cpanel setelah menginputkan nama domain Anda dan ekstensinya. Contoh: namadomainsaya.com/cpanel
  11. Login dengan menginputkan username dan password cPanel Anda. Setelah berhasil login, akses menu Advanced > Terminal.
  12. Di Terminal, jalankan perintah berikut untuk membuat folder baru sebagai tempat penyimpanan backup:
    bash<br /> mkdir backup<br />
  13. Eksekusi perintah berikut untuk mencadangkan database MySQL ke folder backup. Sesuaikan database_username, database_name, dan cpanel_username dengan detail milik Anda sendiri:
    bash<br /> mysqldump -u database_username -p database_name > /home/cpanel_username/backup/backup_satu_database.sql<br />
  14. Input password database MySQL sebagai validasi.
  15. Berikut hasil akhirnya setelah berhasil dicadangkan.

    Cara Backup Beberapa Database MySQL

    Cara ini berguna jika Anda ingin mencadangkan beberapa database menjadi satu file. Caranya dengan menambahkan –databases sebagai opsi sintaks SQL Dump.

  16. Masih di Terminal cPanel, jalankan perintah berikut lengkap dengan opsi –databases beserta minimal dua database yang ingin dicadangkan:
    bash<br /> mysqldump -u database_username -p --databases database_name1 database_name2 > /home/cpanel_username/backup/backup_beberapa_database.sql<br />
  17. Berikut hasilnya setelah dieksekusi.

    Cara Backup Seluruh Database MySQL

    Cara ini berfungsi untuk mencadangkan semua database tanpa terkecuali. Untuk hasil akhirnya, semua database akan dicadangkan dalam satu file backup.

  18. Tambahkan opsi –all-databases pada sintaks Mysqldump seperti berikut:
    bash<br /> mysqldump -u database_username -p --all-databases > /home/cpanel_username/backup/backup_seluruh_database.sql<br />
  19. Berikut output yang muncul di layar setelah dieksekusi.

    Cara Backup Database dengan Cap Waktu

    Jika Anda sering mencadangkan database serupa di lokasi yang sama, alangkah baiknya menambahkan cap waktu atau time stamp. Hal ini memudahkan Anda untuk melacak kapan backup tersebut dilakukan.

  20. Jalankan perintah SQL Dump lengkap dengan imbuhan time stamp seperti ini:
    bash<br /> mysqldump -u database_username -p database_name > /home/cpanel_username/backup/backup_satu_database-$(date +%Y%m%d).sql<br />
  21. Sintaks di atas akan menghasilkan tampilan berikut.

    Cara Backup Database MySQL Terkompresi

    Jika ukuran file database MySQL Anda terlalu besar, Anda bisa mencadangkan database sekaligus mengkompresi ukurannya untuk menghemat ruang penyimpanan. Caranya mudah, cukup beri imbuhan gzip seperti contoh di bawah:

  22. Begini sintaks Mysqldump lengkap dengan gzip sebagai cara backup MySQL:
    bash<br /> mysqldump -u database_username -p database_name | gzip > /home/cpanel_username/backup/backup_satu_database.sql.gz<br />
  23. Output yang tampil akan seperti ini setelah dieksekusi.

    Cara Backup Database MySQL Otomatis dengan Cron Job

    Jika Anda merasa repot atau malas mencadangkan database MySQL secara manual, maka Cron Job adalah solusinya. Dengan Cron Job, Anda bisa menjalankan script backup otomatis dalam rentang waktu tertentu, seperti harian.

    Berikut cara menggabungkan Cron Job dengan SQL Dump sebagai cara backup MySQL otomatis:

  24. Jalankan perintah di bawah untuk membuat sekaligus mengedit file Cron Job bernama .my.cnf:
    bash<br /> nano ~/.my.cnf<br />
  25. Anda akan menjumpai tampilan editor Nano. Di sini, salinlah script berikut. Jangan lupa untuk mengganti isian database_username dan database_password:
    bash<br /> [client]<br /> user = database_username<br /> password = database_password<br />
  26. Tekan kombinasi tombol Ctrl+X untuk menyimpan file sekaligus keluar dari Nano editor.
  27. Beri perizinan pada file .my.cnf dengan perintah di bawah:
    bash<br /> chmod 600 ~/.my.cnf<br />
  28. Buat sebuah file crontab sebagai tempat mengeksekusi sintaks Mysqldump:
    bash<br /> crontab -e<br />
  29. Isilah file crontab dengan perintah SQL Dump di bawah. Angka 1 0 menunjukkan kalau proses backup database akan dilakukan setiap jam 10 pagi:
    bash<br /> 1 0 * * * mysqldump -u database_username -p database_name > /home/cpanel_username/backup/backup_cronjob-$(date +%Y%m%d).sql<br />
  30. Simpan perubahan di atas dengan klik esc kemudian ketik :wq. Berikut outputnya setelah disimpan.

    Melihat Hasil Backup Database MySQL

    Pada poin-poin sebelumnya, Anda telah mencoba berbagai variasi perintah SQL Dump sebagai cara backup MySQL. Untuk melihat hasil akhir backup, ikuti langkah-langkah di bawah:

  31. Kembali ke dashboard cPanel, buka menu Files > File Manager.
  32. Buka folder tempat backup yang Anda buat di awal.
  33. Berikut adalah hasil backup database MySQL yang tadi Anda buat menggunakan Mysqldump.

    Cara Restore Hasil Mysqldump

    Tidak lengkap rasanya belajar cara backup MySQL dengan SQL Dump tanpa mencoba cara mengembalikan atau restore database tersebut ke tempat semula. Namun, sebelum praktik cara restore hasil Mysqldump, perlu diketahui bahwa untuk merestore hasil backup, lebih baik menggunakan query mysql daripada mysqldump. Sebab, Mysqldump tidak bisa mengembalikan struktur asli database beserta tabelnya, yang bisa menyebabkan database tersebut jadi error.

    Cara Restore Database MySQL dari Backup Tunggal

    Jika Anda hanya mencadangkan satu database MySQL saja, gunakan perintah berikut untuk mengembalikan database tersebut:

  34. Misalnya Anda ingin merestore file backup bernama backup_satu_database.sql dari folder backup, maka sintaksnya adalah:
    bash<br /> mysql -u database_username -p database_name < /home/cpanel_username/backup/backup_satu_database.sql<br />
  35. Berikut outputnya di Terminal cPanel setelah dieksekusi.

    Cara Restore Satu Database MySQL dari Full Backup

    Misalnya Anda mencadangkan semua database menggunakan opsi –all-databases, tapi hanya ingin merestore salah satu database saja. Gunakan opsi –one-database seperti contoh sintaks di bawah:

  36. Jalankan perintah di bawah lengkap dengan opsi –one-database:
    bash<br /> mysql -u database_username -p --one-database database_name < /home/cpanel_username/backup/backup_seluruh_database.sql<br />
  37. Berikut hasilnya setelah dieksekusi di Terminal.

    Tertarik Mencoba SQL Dump sebagai Cara Backup MySQL?

    Mysqldump adalah sebuah alat sederhana dengan fungsi luar biasa untuk memudahkan Anda mencadangkan database MySQL. Cara dump database MySQL lewat SQL Dump ini masih terbilang mudah, asalkan Anda teliti dalam mengeksekusi perintah.

    Jika Anda tertarik mencoba cara backup MySQL dengan Mysqldump, salah satu hal yang wajib Anda persiapkan adalah layanan penyimpanan website yang mendukung akses SSH via terminal. sobatcloud.com lewat layanan Unlimited Hosting bisa jadi pilihan yang tepat karena sudah sesuai dengan kriteria tersebut.

    Selain itu, layanan ini juga dibekali keunggulan lain yang tak kalah menarik, seperti Unlimited Database di mana Anda bisa membuat database MySQL sepuasnya, atau Latest cPanel untuk memudahkan Anda mengakses menu-menu database.

    Menariknya lagi, semua keunggulan di atas bisa Anda nikmati dengan harga terjangkau, mulai dari Rp24ribuan/bulan untuk paket Personal. Yuk segera beralih ke web hosting Indonesia terbaik sobatcloud.com sekarang!

BACA JUGA :  20 Contoh Website Perusahaan dan Toko Online Terbaik

Leave a Comment