Probleme dans utilisation sauvegarde
algal
-
zucrezel Messages postés 30 Statut Membre -
zucrezel Messages postés 30 Statut Membre -
Bonjour,
mysql 5.5.20
J'ai un problème dans mes sauvegardes
voici l'ordre que j'utilise : je ne demande que les tables
mysqldump -h localhost -uUser -pPWD Nom_base --verbose --compress --tables > Nom_base_sauve .sql
lorsque je remonte la base, je m’aperçois qu'il me restaure certaines vues en tant que tables (pas toutes mais un nombre conséquent) ceci i a pour effet de rendre les vues de la base restaurée inutilisable (elles sont devenue des tables)
Une idée serait très bienvenue, merci d'avance
mysql 5.5.20
J'ai un problème dans mes sauvegardes
voici l'ordre que j'utilise : je ne demande que les tables
mysqldump -h localhost -uUser -pPWD Nom_base --verbose --compress --tables > Nom_base_sauve .sql
lorsque je remonte la base, je m’aperçois qu'il me restaure certaines vues en tant que tables (pas toutes mais un nombre conséquent) ceci i a pour effet de rendre les vues de la base restaurée inutilisable (elles sont devenue des tables)
Une idée serait très bienvenue, merci d'avance
A voir également:
- Probleme dans utilisation sauvegarde
- Logiciel de sauvegarde gratuit - Guide
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Sauvegarde facile - Télécharger - Sauvegarde
- Sauvegarde android - Guide
4 réponses
Bonjour,
Et si tu ajoutes l'exclusion de chaque vue ?
Et si tu ajoutes l'exclusion de chaque vue ?
--ignore-table=view1 --ignore-table=view2 --ignore-table=view3
Et avec du vieux code php qui va chercher les vues et qui les exclut avec --skip-triggers ?
<?php
if (is_array($argv) && count($argv)>3) {
$database=$argv[1];
$user=$argv[2];
$password=$argv[3];
}
else {
echo "Usage php mysqdump.php <database> <user> <password>\n";
exit;
}
$link = mysql_connect('localhost', $user, $password);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
$source = mysql_select_db('$database', $link);
$sql = "SHOW FULL TABLES IN `$database` WHERE TABLE_TYPE LIKE 'VIEW';";
$result = mysql_query($sql);
$views=array();
while ($row = mysql_fetch_row($result)) {
$views[]="--ignore-table={$database}.".$row[0];
}
//pas de vues ni de triggers
echo passthru("mysqldump -u root --password=\"$password\" $database --skip-triggers ".implode(" ",$views));
?>
L’idéal serait un script linux qui interroge la base pour avoir le nom des tables et qui fasse la sauvegarde. Comme ca je serais sur d'avoir une liste à jour. Mais je sais pas faire !