Это моя функция для загрузки zip-файла базы данных, она работает нормально, но я хочу вставить это в базу данных, а также импортировать ее в базу данных, динамически выбирая файл sql
public function db_backup(){
date_default_timezone_set('Asia/Calcutta');
$this->load->dbutil();
$prefs = array(
'format' => 'zip',
'add_drop' => TRUE,
'add_insert'=> TRUE,
'newline' => "\n"
);
$backup = $this->dbutil->backup($prefs);
$this->load->helper('file');
$this->load->helper('download');
$this->zip->archive(FCPATH.'backup/database/'.date('Y-m-d-His').'DbBackup.zip');
}
please provide me solution i tried vaious examples nothing works
public function restoredb($id = ''){
$isi_file = file_get_contents('./backups/XXXXXXX.sql'); #here I want to give dynamic path
$query = rtrim( $isi_file, "\n;" );
$array_query = explode(";", $query);
foreach($array_query as $query){
$this->db->query($query);
}
}
Выше функция восстановления базы данных, но не работает, как я хотел
0
user6551260
25 Апр 2017 в 08:34
2 ответа
Лучший ответ
$backup = read_file('path/to/file.sql');
$sql_clean = '';
foreach (explode("\n", $backup) as $line){
if(isset($line[0]) && $line[0] != "#"){
$sql_clean .= $line."\n";
}
}
foreach (explode(";\n", $sql_clean) as $sql){
$sql = trim($sql);
if($sql){
$this->db->query($sql);
}
}
Попробуйте это, я надеюсь, это поможет
0
Ghugu
28 Апр 2017 в 04:58
Попробуйте это при экспорте и импорте данных
Экспорт
$cmd = "mysqldump -u $DBUSER --password=$DBPASSWD -h$HOST $DATABASE > backup.sql";
shell_exec( $cmd );
Импорт / Восстановление
$cmd = "mysql -u $DBUSER --password=$DBPASSWD -h$HOST -D$database < backup.sql";
shell_exec( $cmd );
0
Jeffrey Hitosis
25 Апр 2017 в 05:48
Похожие вопросы
Новые вопросы
php
PHP - это широко используемый высокоуровневый, динамический, объектно-ориентированный и интерпретируемый язык сценариев, в первую очередь предназначенный для серверной веб-разработки. Используется для вопросов о языке PHP.