Bạn tạo mới một file PHP và copy đoạn code sau vào:
<?php backup_tables('localhost','root','','maytinh'); /* Sao lưu cả database hoặc một bảng cụ thể nào đó */ function backup_tables($host,$user,$pass,$name,$tables = '*') { $link = mysql_connect($host,$user,$pass); mysql_select_db($name,$link); mysql_query("SET NAMES 'UTF8'"); //Lấy tất cả các bảng if($tables == '*') { $tables = array(); $result = mysql_query('SHOW TABLES'); while($row = mysql_fetch_row($result)) { $tables[] = $row[0]; } } else { $tables = is_array($tables) ? $tables : explode(',',$tables); } //Vòng lặp foreach($tables as $table) { $result = mysql_query('SELECT * FROM '.$table); $num_fields = mysql_num_fields($result); $return.= 'DROP TABLE IF EXISTS '.$table.';'; $row2 = mysql_fetch_row(mysql_query('SHOW CREATE TABLE '.$table)); $return.= "\n\n".$row2[1].";\n\n"; for ($i = 0; $i < $num_fields; $i++) { while($row = mysql_fetch_row($result)) { $return.= 'INSERT INTO '.$table.' VALUES('; for($j=0; $j<$num_fields; $j++) { $row[$j] = addslashes($row[$j]); $row[$j] = ereg_replace("\n","\\n",$row[$j]); if (isset($row[$j])) { $return.= '"'.$row[$j].'"' ; } else { $return.= '""'; } if ($j<($num_fields-1)) { $return.= ','; } } $return.= ");\n"; } } $return.="\n\n\n"; } //save file $handle = fopen('db-backup-'.time().'-'.(md5(implode(',',$tables))).'.sql','w+'); fwrite($handle,$return); fclose($handle); } ?>
Ở đây tôi thực hiện sao lưu database có tên là "maytinh" --> File backup sẽ được chuyển đến thư mục gốc của bạn, và bạn có thể tùy chỉnh thư mục này thoải mái. Bài tiếp tôi sẽ hướng dẫn các bạn đoạn code thực hiện phục hồi dữ liệu trên PHP