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-function , http://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"); } }
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?
But it’s replacing database…
Is there any way to append data?