Import SQL dump to MySQL using Codeigniter

Taking backup dump and importing the dump into database can be done very easily using php. In Last posts i explained how to take the backup of Mysql using php http://asvignesh.in/take-mysql-backup-using-php-passthru-functionhttp://asvignesh.in/take-mysql-backup-using-php

Here is the function to import the sql dump into database

function import_dump($folder_name = null , $file_name) {
$folder_name = 'dumps';
$path = 'assets/backup_db/'; // Codeigniter application /assets
$file_restore = $this->load->file($path . $folder_name . '/' . $file_name, true);
$file_array = explode(';', $file_restore);
foreach ($file_array as $query)
 {
 $this->db->query("SET FOREIGN_KEY_CHECKS = 0");
 $this->db->query($query);
 $this->db->query("SET FOREIGN_KEY_CHECKS = 1");
 }
}

2 Comments

  1. I have some case where the query in mysql dump is something like this:

    INSERT INTO table_name (`field1` , `field2`) values (‘some data’ , ‘some ; data ;’)

    inside the data type varchar or text they have some value with semicolon (;)
    and when we run this code explode(‘;’, $file_restore);
    it got separated into array, how can we prevent this?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from

Subscribe now to keep reading and get access to the full archive.

Continue reading