suchen
Heimphp教程php手册用php实现备份数据库ZIP及导出

用php实现备份数据库ZIP及导出

Jun 13, 2016 am 10:48 AM
phpzip备份实现导出开源数据库verwenden系统

经常在有的PHP开源系统中,看到有备份数据库并导出的方法,其实代码不复杂,下面
大概讲解下,以WINDOWS为例子,两类方法,一个是目录文件夹要有执行脚本权限的,
一个个是没有权限的,代码如下:

一)
  
Java代码    
1.  2.     
3. $username = "root";    
4. $password = "";    
5. $hostname = "localhost";    
6. $dbname   = "test";   
7.     
8.  
9. $dumpfname = $dbname . "_" . date("Y-m-d_H-i-s").".sql";   
10. $command = "C:\\xampp\\mysql\\bin\\mysqldump --add-drop-table --host=$hostname   
11.     --user=$username ";   
12. if ($password)    
13.         $command.= "--password=". $password ." ";    
14. $command.= $dbname;   
15. $command.= " > " . $dumpfname;   
16. system($command);   
17.     
18. // zip 数据文件  
19. $zipfname = $dbname . "_" . date("Y-m-d_H-i-s").".zip";   
20. $zip = new ZipArchive();   
21. if($zip->open($zipfname,ZIPARCHIVE::CREATE))    
22. {   
23.    $zip->addFile($dumpfname,$dumpfname);   
24.    $zip->close();   
25. }   
26.     
27. // read zip file and send it to standard output   
28. if (file_exists($zipfname)) {   
29.     header('Content-Description: File Transfer');   
30.     header('Content-Type: application/octet-stream');   
31.     header('Content-Disposition: attachment; filename='.basename($zipfname));   
32.     flush();   
33.     readfile($zipfname);   
34.     exit;   
35. }   
36. ?>  


方法2 文件夹没相关权限
Java代码    
1.  2. ob_start();   
3.     
4. $username = "root";    
5. $password = "";    
6. $hostname = "localhost";    
7. $dbname   = "test";   
8.     
9. $command = "C:\\xampp\\mysql\\bin\\mysqldump --add-drop-table --host=$hostname   
10.     --user=$username ";   
11. if ($password)    
12.         $command.= "--password=". $password ." ";    
13. $command.= $dbname;   
14. system($command);   
15.     
16. $dump = ob_get_contents();    
17. ob_end_clean();   
18.     
19.  
20. //不ZIP了  
21. header('Content-Description: File Transfer');   
22. header('Content-Type: application/octet-stream');   
23. header('Content-Disposition: attachment; filename='.basename($dbname . "_" .    
24.     date("Y-m-d_H-i-s").".sql"));   
25. flush();   
26. echo $dump;   
27. exit();]]>   
28. ?> 

 

摘自 jackyrong
Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Sicherer Prüfungsbrowser

Sicherer Prüfungsbrowser

Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools