Cara Auto BackUp Database MySQLi dengan PHP

Auto BackUp Database MySQL dengan PHP


Kita akan manfaatkan fitur mysqldump yang sudah tersedia di MySQL. Hanya saja mysqldump ini bentuknya adalah executable file yang harus dijalankan melalui shell. Anda dapat melihat file ini di dalam folder mysql/bin. Jika Anda menggunakan AppServ, maka mysqldump ini terletak di folder C:\AppServ\mysql\bin, dan jika Anda menggunakan XAMPP, maka mysqldump ini terletak di folder C:\xampp\mysql\bin  dengan di pandu penggunaan date  untuk eksekusi script maka akan menghasilkan auto backup database.

Langsung saja, aplikasi auto backup database dengan script PHP ini terdiri dari tiga bagian, yaitu proses koneksi database (tinggal include jika sebelumnya telah memiliki file koneksi database.), bagian kedua terdiri dari persiapan auto update, dan bagian yang ketiga terdiri dari proses backup database sesuai dengan yang di inginkan.

1. Koneksi database; 

Berikut script koneksi database sebagai contoh kita akan menggunakan database "db_data".


<?php

// koneksi database
// setting user,password, nama database

$dbUser="root";
$dbPass=""; //kosingin aja bila belum disetting passwordnya
$dbName="db_data";
$dbHost = "localhost";

$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbName);
?>


2. Persiapan auto update; 

<?php

// cek tanggal back up
$autotgl=date("d");

// nama database
$dbName="db_data";

// tanggal auto backup
$tgl=date("m_Y");

// alamat penyimpanan dan nama file backup
$nama_file="E:\DB/".$dbName.$tgl.".sql";

// setting alamat penyimpanan file backup.sql
    $almBackup="E:\DB/".$dbName.$tgl."";
    $dbNamaBackup=$dbName.$tgl;

    // list nama tabel yang akan di backup
    // query untuk menampilkan semua tabel dalam database
    $query = "SHOW TABLES";
    $hasil = mysqli_query($conn, $query);
    $listTabel = "";
        while($data = mysqli_fetch_row($hasil))
        {
        $listTabel .= $data[0]." ";
        }
 ?>

3. Proses Backup database MySQL

<?php

// cek apakah ada atau tidak dokumen.sql pada web server dan apakah tanggal juga sesuai
if(!file_exists($nama_file) and $autotgl=="16")
    {

    // membentuk string command menjalankan mysqldump
    // diasumsikan file mysqldump terletak di dalam folder C:\xampp\mysql\bin -> sesuaikan dengan webserver yang dimiliki

   $command = "C:\HOST\MySQL\bin\mysqldump -u".$dbUser." -p".$dbPass." ".$dbName." ".$listTabel." > ".$almBackup.".sql";

    // perintah untuk menjalankan perintah mysqldump dalam shell melalui PHP
    exec($command);
    echo "file $nama_file sudah Ter BackUp.";
    exit;
    }

else{
echo "Ups, file $nama_file sudah ada.";
}
?>

Sekian dulu semoga bermanfaat :)

1 Response to "Cara Auto BackUp Database MySQLi dengan PHP"

  1. apakah bisa backup database diterapkan di web hosting?

    ReplyDelete

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel