Jika kamu seorang sistem administrator tentunya sudah pasti menjadi perhatian bagaimana membackup database setiap hari agar data dapat terjaga jika sewaktu-waktu server mengalami kerusakan. Saat menjalankan sebuah aplikasi atau situs web yang menggunakan database MySQL pada Windows Server , penting untuk memastikan bahwa data kamu aman dan terlindungi dari kehilangan atau kerusakan. Kamu dapat melakukan backup database MySQL secara otomatis pada Windows Server
Salah satu cara terbaik untuk melakukannya adalah dengan secara teratur melakukan backup database. Berikut adalah panduan langkah-demi-langkah tentang cara melakukan backup database MySQL pada Windows Server:
1. Persiapan Awal:
Sebelum kamu mulai membuat backup database, pastikan kamu memiliki akses administrator ke server Windows yang kamu miliki. Pastikan juga bahwa MySQL telah di instal dan berfungsi dengan baik.
2. Pilih Metode Backup:
Ada beberapa cara untuk membuat backup database MySQL, antara lain:
- Backup dengan perintah SQL: Menggunakan perintah SQL seperti
mysqldump
. - Menggunakan alat manajemen basis data grafis seperti MySQL Workbench.
- Melakukan backup menggunakan aplikasi pihak ketiga
Kali ini kita akan mencoba menggunakan mysqldump, di mana akan kita jalankan via Batch file pada Windows. pastikan juga mysqldump sudah dapat di jalankan pada cmd. untuk memastikannya ketikkan perintah mysqldump pada cmd lalu tekan enter
Jika tampil seperti screenshot di atas, berarti mysqldump sudah dapat di jalankan dengan baik pada server Windowsmu.
3. Instalasi Aplikasi 7Zip
7zip adalah aplikasi untuk kompresi file gratis yang memungkinkan pengguna untuk mengompres dan mengekstrak file dan folder dengan mudah. Aplikasi ini juga dapat dijalankan dengan perintah melalui CMD. Ini nantinya akan digunakan untuk mengkompresi hasil backup sehingga lebih menghemat kapasitas penyimpanan servermu. Kamu dapat mendowload aplikasi 7Zip : https://www.7-zip.org/download.html
4. Membuat Batch File
Untuk menjalankan backup database secara otomatis kamu perlu membuat bacth file yang nantinya akan di jalankan via Task Scheduler.
- Buka Aplikasi Notepad atau Text Editor yang biasa kamu pakai
- Tuliskan script seperti dibawah ini dan sesuaikan script dengan konfigurasi server yang kamu punya seperti nama database, user dan password database dan lain sebagainya
@echo off
tasklist /FI "IMAGENAME eq mysqld.exe" 2>NUL | find /I /N "mysqld.exe">NUL
if "%ERRORLEVEL%"=="0" (
goto continue
) else (
goto mysql_not_running
)
:continue
set dbUser=root [Ubah Sesuai User Database]
set dbPassword=xxx [Ubah Sesuai Password Database]
set db=namadb [Ubah Sesuai Database Yang Ingin Di Backup]
set backupDir="D:\BackupDB" [Ubah Sesuai Lokasi Folder Tempat Menyimpan Hasil Backup]
set mysqldump="C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe" [Ubah Sesuai Lokasi Folder Tempat mysqldump.exe berada]
set mysqlDataDir="C:\ProgramData\MySQL\MySQL Server 8.0\Data" [Ubah Sesuai Lokasi Folder Tempat data MySQL berada]
set zip="C:\Program Files\7-Zip\7z.exe" [Ubah Sesuai Lokasi Folder 7zip berada]
:: get date
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (
set yy=%%i
set mon=%%j
set dd=%%k
)
:: get time
for /F "tokens=5-8 delims=:. " %%i in ('echo^| time ^| find "current" ') do (
set hh=%%i
set min=%%j
)
set hr=%time:~0,2%
set hr=%hr: =0%
set dirName=%mon%-%yy%-%dd%_%hr%-%min%
if not exist %backupDir%\%dirName%\ (
mkdir %backupDir%\%dirName%
)
echo -----------------------------
echo * MySQL backup are starting *
echo -----------------------------
echo Current backup : %db%.sql
%mysqldump% --host="localhost" --user=%dbUser% --password=%dbPassword% --single-transaction --add-drop-table --databases %db% > %backupDir%\%dirName%\%db%.sql
%zip% a -tgzip %backupDir%\%dirName%\%db%.sql.gz %backupDir%\%dirName%\%db%.sql
echo[
echo Done compress and archive thus file..now lets delete SQL file...
del %backupDir%\%dirName%\%db%.sql
cls
popd
echo -----------------------------
echo + MySQL backup are finished +
echo -----------------------------
exit
:mysql_not_running
echo -----------------------------
echo !!WARNING COULDN'T CONTINUE!!
echo -----------------------------
echo Message: mysqld.exe is not running, please start it (e.g. via xampp-control)
pause
exit
Yang perlu kamu sesuaikan dengan konfigurasimu adalah pada variable :
- set dbUser=root [Ubah Sesuai User Database]
- set dbPassword=xxx [Ubah Sesuai Password Database]
- set db=namadb [Ubah Sesuai Database Yang Ingin Di Backup]
- set backupDir=”D:\BackupDB” [Ubah Sesuai Lokasi Folder Tempat Menyimpan Hasil Backup]
- set mysqldump=”C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe” [Ubah Sesuai Lokasi Folder Tempat mysqldump.exe berada]
- set mysqlDataDir=”C:\ProgramData\MySQL\MySQL Server 8.0\Data” [Ubah Sesuai Lokasi Folder Tempat data MySQL berada]
- set zip=”C:\Program Files\7-Zip\7z.exe” [Ubah Sesuai Lokasi Folder 7zip berada]
Setelah disesuaikan. Simpan file dalam bentuk batch file yang berformat .bat
5. Uji Coba Script Backup
Jalankan script backup dengan cara mengklik file .bat tadi dan cek apakah hasil backup sudah ada pada folder yang telah kita tentukan tadi.
Kamu juga dapat mencoba untuk melakukan restore hasil backup apakah dapat terbaca dengan baik pada databasemu tanpa ada data yang error.
4. Menjadwalkan Backup Otomatis Via Task Scheduler
Agar lebih efisien, disarankan untuk menjadwalkan backup database MySQL secara otomatis pada Windows. Kamu dapat menggunakan Task Scheduler di Windows untuk melakukan ini. Berikut langkah-langkahnya:
- Buka Task Scheduler melalui Control Panel atau cari “Task Scheduler” di menu Start.
- Buat tugas baru dengan mengeklik “Create Basic Task” di panel kanan.
- Beri nama tugas kamu dan deskripsi yang sesuai, kemudian klik “Next”.
- Pilih frekuensi dan waktu yang Anda inginkan untuk menjalankan backup, kemudian klik “Next”.
- Pilih “Start a Program” dan klik “Next”.
- Pilih file .bat yang telah kita buat tadi (contoh : BackupDB.bat) sebagai program untuk dijalankan
- Klik “Next”, lalu “Finish” untuk menyelesaikan penjadwalan tugas.
Dengan menjadwalkan backup secara otomatis, Kamu dapat memastikan bahwa data kamu selalu terlindungi.
Setelah backup di jadwalkan, pastikan untuk secara teratur menguji proses restore dari backup. Ini akan memastikan bahwa kamu dapat mengembalikan database Anda dengan sukses jika terjadi kejadian yang tidak di inginkan.
Penutup
Dengan mengikuti panduan ini, Kamu akan dapat membuat dan menjadwalkan backup database MySQL yang kamu miliki secara otomatis dengan mudah pada server Windows mu. Ini adalah langkah penting untuk melindungi data kamu dan memastikan kelancaran operasi bisnis yang kamu jalankan.
Tinggalkan Balasan