Backup et Restauration d'une BDD via PHP

Gregg78 Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
Gregg78 Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à toutes et tous,

voilà, comme le titre l'indique, je suis en train de travailler sur des scripts pour faire un backup puis une restauration d'une Base de Données.

J'utilise les scripts situés à cette adresse :
http://www.php-mysql-tutorial.com/wikis/mysql-tutorials/using-php-to-backup-mysql-databases.aspx

Or il ne se passe rien sur mon serveur.

Voilà mon script, quelqu'un voit-il où ça cloche ?

<?php 
$dbhost = 'xxx'; 
$dbuser = 'xxx'; 
$dbpass = 'xxx'; 
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql'); 
$dbname = 'xxx'; 
mysql_select_db($dbname); 

$tableName  = 'test'; 
$backupFile = 'test.sql'; 
$query      = "SELECT * INTO OUTFILE '$backupFile' FROM $tableName"; 
$result = mysql_query($query); 
?>  


Merci d'avance pour votre aide et votre temps.

Gregg
A voir également:

4 réponses

francis
 
Salut,

Mysqldump ne te suffit pas ?
0
Gregg78 Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   4
 
En fait la fonction Mysqldump présente sur le lien (et ci-dessous) me retourne un fichier gz vide. Au moins il y a création d'un fichier je suis d'accord mais il est vide. Est-ce que cela vient de mon serveur ou de ma base ? Je suis chez 1and1.

$backupFile = $dbname . date("Y-m-d-H-i-s") . '.gz';
$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";
system($command);


de plus, j'aurai bien aimé utilisé les premiers codes car ils proposent de re-uploader le fichier pour restaurer la base...
0
francis
 
affiche toi la commande, et essaie de la lancer a la main pour voir si elle est bien exécutée (sans le gzip en premier)
0
Gregg78 Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   4
 
Oui elle semble bien executée...

J'ai même essayé de créer le fichier test.sql sur le serveur avec les permissions chmod 777 mais rien ne s'y inscrit !
0
Gregg78 Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   4
 
Je viens d'essayer sur OVH et même problème donc je ne pense pas que cela vienne du serveur ou de la BDD ;-(
0
francis
 
donne moi ta commande
0
Gregg78 Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   4
 
Je ne comprends pas, la commande est dans mon message. Ainsi que le lien tutoriel.
Voici ce que j'essaie de faire fonctionner :


Below is an example of using SELECT INTO OUTFILE query for creating table backup :

<?php
include 'config.php';
include 'opendb.php';

$tableName  = 'mypet';
$backupFile = 'backup/mypet.sql';
$query      = "SELECT * INTO OUTFILE '$backupFile' FROM $tableName";
$result = mysql_query($query);

include 'closedb.php';
?>

To restore the backup you just need to run LOAD DATA INFILE query like this :

<?php
include 'config.php';
include 'opendb.php';

$tableName  = 'mypet';
$backupFile = 'mypet.sql';
$query      = "LOAD DATA INFILE 'backupFile' INTO TABLE $tableName";
$result = mysql_query($query);

include 'closedb.php';
?> 
0