PHP/MYSQL backup

Gestart doorBasDev15 reacties42 weergaven

16 berichten · pagina 1 van 2

BasDev

Lid · Topicstarter

Berichten
2.692
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Hey,

Ik zoek een script die een backup maakt van een bepaalde tabel.
Ik heb al een pagina die de tabel post maar nog geen script die er dan een SQL backup van maakt...
Heeft iemand van jullie dat misschien??
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
MySQL heeft er een hele handige commandline functie voor, waarmee mysql je hele backup maakt. Zelfbouw- of internetscriptjes kunnen daar niet tegenop.
mysql -u gebruikersnaam -p databasenaam --default_character_set utf8 < backup.sql

Die backupt alleen niet maar 1 tabel, al kun je dat wel instellen volgens mij.
0
BasDev

Lid · Topicstarter

Berichten
2.692
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik heb net een script gevonden yummie Die doet wel alle tabellen
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Laat eens zien? emo
0
BasDev

Lid · Topicstarter

Berichten
2.692
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Oke:

Moet je wel naar de pagina toe gaan en heeft alle rechten nodig (777)
Maak een bestandje: backup.sql

[COLOR= #0000BB]<?php[/COLOR] 
[URL="http://www.php.net/include_once"]include_once[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]./config.php[/COLOR][COLOR= #007700]);[/COLOR]

backup_tables[COLOR= #007700]([/COLOR][COLOR= #DD0000]localhost[/COLOR][COLOR= #007700],[/COLOR][COLOR= #DD0000]username[/COLOR][COLOR= #007700],[/COLOR][COLOR= #DD0000]password[/COLOR][COLOR= #007700],[/COLOR][COLOR= #DD0000]db_naam[/COLOR][COLOR= #007700]);[/COLOR]
 
[COLOR= #FF8000]/* backup the db OR just a table */[/COLOR] 
[COLOR= #007700]function[/COLOR] backup_tables[COLOR= #007700]([/COLOR][COLOR= #0000BB]$host[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$user[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$pass[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$name[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$tables[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]*[/COLOR][COLOR= #007700]) 
{[/COLOR] 
  [COLOR= #0000BB]$link[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_connect"]mysql_connect[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$host[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$user[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$pass[/COLOR][COLOR= #007700]);[/COLOR]
  [URL="http://www.php.net/mysql_select_db"]mysql_select_db[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$name[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$link[/COLOR][COLOR= #007700]);[/COLOR]

  [COLOR= #FF8000]//get all of the tables [/COLOR]
  [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$tables[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]*[/COLOR][COLOR= #007700]) 
  {[/COLOR] 
    [COLOR= #0000BB]$tables[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
    [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]SHOW TABLES[/COLOR][COLOR= #007700]);[/COLOR]
    [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$row[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_fetch_row"]mysql_fetch_row[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700])) 
    {[/COLOR] 
      [COLOR= #0000BB]$tables[/COLOR][COLOR= #007700][] =[/COLOR] [COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]];
    } 
  }[/COLOR] 
  [URL="http://www.php.net/else"]else[/URL] 
  [COLOR= #007700]{[/COLOR] 
    [COLOR= #0000BB]$tables[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/is_array"]is_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$tables[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$tables[/COLOR] [COLOR= #007700]:[/COLOR] [URL="http://www.php.net/explode"]explode[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000],[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$tables[/COLOR][COLOR= #007700]);
  }[/COLOR] 

  [COLOR= #FF8000]//cycle through [/COLOR]
  [URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$tables[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$table[/COLOR][COLOR= #007700]) 
  {[/COLOR] 
    [COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]SELECT * FROM [/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$table[/COLOR][COLOR= #007700]);[/COLOR]
    [COLOR= #0000BB]$num_fields[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_num_fields"]mysql_num_fields[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700]);[/COLOR]
    [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000]DROP TABLE [/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$table[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000];[/COLOR][COLOR= #007700];[/COLOR]
    [COLOR= #0000BB]$row2[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_fetch_row"]mysql_fetch_row[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]SHOW CREATE TABLE [/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$table[/COLOR][COLOR= #007700]));[/COLOR]
    [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000]"nn"[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$row2[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #DD0000]";nn"[/COLOR][COLOR= #007700];[/COLOR]
    
    [URL="http://www.php.net/for"]for[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$num_fields[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++) 
    {[/COLOR] 
      [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$row[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_fetch_row"]mysql_fetch_row[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700])) 
      {[/COLOR] 
        [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000]INSERT INTO [/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$table[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000] VALUES([/COLOR][COLOR= #007700];[/COLOR]
        [URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]=[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$j[/COLOR][COLOR= #007700]<[/COLOR][COLOR= #0000BB]$num_fields[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$j[/COLOR][COLOR= #007700]++) 
        {[/COLOR] 
          [COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/addslashes"]addslashes[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]]);[/COLOR]
          [COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/ereg_replace"]ereg_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"n"[/COLOR][COLOR= #007700],[/COLOR][COLOR= #DD0000]"n"[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]]);[/COLOR]
          [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]])) {[/COLOR] [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000]"[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #DD0000]"[/COLOR] [COLOR= #007700]; }[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR] [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000]""[/COLOR][COLOR= #007700]; }[/COLOR] 
          [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$j[/COLOR][COLOR= #007700]<([/COLOR][COLOR= #0000BB]$num_fields[/COLOR][COLOR= #007700]-[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700])) {[/COLOR] [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700]; } 
        }[/COLOR] 
        [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR] [COLOR= #DD0000]");n"[/COLOR][COLOR= #007700];
      } 
    }[/COLOR] 
    [COLOR= #0000BB]$return[/COLOR][COLOR= #007700].=[/COLOR][COLOR= #DD0000]"nnn"[/COLOR][COLOR= #007700];
  }[/COLOR] 
  
  [COLOR= #FF8000]//save file [/COLOR]
  [COLOR= #0000BB]$handle[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/fopen"]fopen[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]backup.sql[/COLOR][COLOR= #007700],[/COLOR][COLOR= #DD0000]w+[/COLOR][COLOR= #007700]);[/COLOR]
  [URL="http://www.php.net/fwrite"]fwrite[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$handle[/COLOR][COLOR= #007700],[/COLOR][COLOR= #0000BB]$return[/COLOR][COLOR= #007700]);[/COLOR]
  [URL="http://www.php.net/fclose"]fclose[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$handle[/COLOR][COLOR= #007700]);
}[/COLOR]
?>


ZO heb ik hem en hij werkt goed yummie
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Mja, al zou ik dan veeeel liever de standaard mysql functie ervoor gebruiken, zodra je keys en dergelijke gaat toevoegen gaan er dingen fout, en daar kom je pas achter zodra je je backup nodig hebt, en het dus al te laat is. clown
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Lennard schreef:
MySQL heeft er een hele handige commandline functie voor, waarmee mysql je hele backup maakt. Zelfbouw- of internetscriptjes kunnen daar niet tegenop.
mysql -u gebruikersnaam -p databasenaam --default_character_set utf8 < backup.sql

Die backupt alleen niet maar 1 tabel, al kun je dat wel instellen volgens mij.

Maar kan dat soort dingen wel via one2xs, want hoe wil je bij de commandline komen?
Of moest dat met iets zoals exec() ofzew.
0
BasDev

Lid · Topicstarter

Berichten
2.692
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Dat script staat op one2xs?
0
Krm

Lid

Berichten
6.235
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
en wie wet een script die elke dag een bakup maakt van je site automatissh en da die dan gaat opslaan in je ftp
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Ik zou niet van heel je site elke dag opslaan op de FTP, dan zit het binnen no-time vol emo
0
BasDev

Lid · Topicstarter

Berichten
2.692
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Maar hij doet alleen de MYSQL hoor yummie
0
Krm

Lid

Berichten
6.235
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
ik wil alleen de mysql database en dat verwijder ik dan na 2 dagen ofsow weer
0
Berichten
18.482
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Superb:
Maar hij doet alleen de MYSQL hoor yummie
Dan kan je FTP nog snel vollopen.
Bij Mywerewolf is de database nu bijna 1 MB, maar als die groter word dan kan het alsnog vol komen te staan als je steeds backupd
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Zeker forum vraagt veel mb na een tijdje emo
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren