Prerequisite
Nama Database yang akan dibackup: BLOG
Membuat folder di root project, untuk menyimpan database yang telah dibackup: backup/db
Jika hal diatas sudah ada, let's start to code!
BackupDatabase.php (CONTROLLER)
<?phpdefined('BASEPATH') or exit('No direct script access allowed');class BackupDatabase extends CI_Controller{public function index(){$data["title"] = "Backup Database Dengan CodeIgniter";$this->load->view('backupdatabase', $data);}public function backup(){date_default_timezone_set("Asia/Jakarta"); // set waktu sesuai lokasi$this->load->dbutil();$pref = ['format' => 'zip','filename' => 'blog.sql'];$backup = $this->dbutil->backup($pref);$db_name = 'backup_database__' . date("d-m-Y__H-i-s") . '.zip'; // nama backup dalam bentuk zip$save = './backup/db/' . $db_name; //folder tempat database disimpan$this->load->helper('file'); // load helper filewrite_file($save, $backup);$this->load->helper("download"); // load helper downloadforce_download($db_name, $backup);}}
backupdatabase.php (VIEW)
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><?= $title ?></title><!-- CDN Jquery --><script src="https://code.jquery.com/jquery-3.5.1.js" integrity="sha256-QWo7LDvxbWT2tbbQ97B53yJnYU3WhH/C8ycbRAkjPDc=" crossorigin="anonymous"></script><!-- CDN Font Awesome --><script src="https://use.fontawesome.com/07323268fb.js"></script><style>h3 {text-align: center;font-family: Arial, Helvetica, sans-serif;font-size: 30px;}.backup {margin: 0;position: absolute;top: 20%;left: 50%;-ms-transform: translate(-50%, -50%);transform: translate(-50%, -50%);background-color: blue;color: white;height: 30px;width: auto;border-radius: 5%;}img {margin: 0;position: absolute;top: 20%;left: 50%;-ms-transform: translate(-50%, -50%);transform: translate(-50%, -50%);}</style></head><body><div><h3><?= $title; ?></h3><img src="<?php echo base_url('gambar/loading1.gif'); ?>" id="loading" width="10%" style="display:none"><button type="button" class="btn btn-sm btn-primary backup"><i class="fa fa-download"></i> Backup Database</button></div></body></html><script>$(document).ready(function() {$(".backup").on("click", function() {$("#loading").show();$(this).hide();$.ajax({url: "<?= base_url(); ?>backupdatabase/backup",success: function(data) {alert("berhasil backup data");$("#loading").hide();$(".backup").show();}});});});</script>
Demo Program
Itulah cara backup database dengan codeigniter, semoga bermanfaat! 😄
1 Komentar
PERLU DICOBA
BalasHapus