Tuesday, March 14, 2017

Back Up MS SQL Server database via PHP

Mungkin berguna, untuk membuat fitur back up database dari aplikasi (databasenya sql server), dapetnya juga dari cari2 sih. Asumsi fungsi2 sqlsrv sudah jalan, driver terinstal dan query2 juga sudah bisa dieksekusi. Berikut gambaran fungsinya:
       

 function backup_database() {
 // set up koneksi
 $db_host = 'kamus123.com';
 $db_user = 'ngeSang';
 $db_pass = 'mau_tahu_aja';
 $db_name = 'nama_db';
 $path = "C:\folder_backup\";
 $nama_file_backup =  $db_name. '_' .date("Ymd_His");
 $save_path = $path . $nama_file_backup;

        $serverName = $db_host;
        $connectionInfo = array("UID"=> $db_user, "PWD" => $db_pass, "Database"=> $db_name);
        $conn = sqlsrv_connect( $serverName, $connectionInfo);
 
 // query back up
        $query = "BACKUP DATABASE ".$db_name." TO DISK = '".$save_path."'";

        sqlsrv_configure("WarningsReturnAsErrors", 0);
        if ( ($stmt = sqlsrv_query($conn, $query)) )
        {
            do
            {
                $arr_message = sqlsrv_errors();

            } while ( sqlsrv_next_result($stmt) ) ;
            sqlsrv_free_stmt($stmt);
            $message = '';
            if(is_array($arr_message)){
                $message = $arr_message[0]['message'];
            }
            echo 'Proses selesai, data backup tersimpan di : ' . $save_path;
        }
        // set error setting to default
        sqlsrv_configure("WarningsReturnAsErrors", 1);

 // jangan lupa ditutup kalau abis dibuka, ntar masuk angin
        sqlsrv_close($conn); 
}

Sebagai penutup saya kasi pantun
Ikan kakap di air kotor, kalau ada back up pastinya ada restore.
Terus mana dong restorenya ? Nanti ya, posting selanjutnya (kalau inget :p)
Kurang lebih seperti itu dulu, semoga bermanfaat.

No comments: