IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Script sauvegarde mysql pour DEBIAN


Sujet :

Shell et commandes GNU

  1. #1
    Membre confirmé Avatar de Tofdu31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 93
    Par défaut Script sauvegarde mysql pour DEBIAN
    Bonjour à tous,

    J'utilise un script que j'ai récupérer sur le net afin de proceder aux sauvegardes de mes bases de données.

    Toutefois, en voulant tester une sauvegarde, j'importe celle ci dans ma base de donnée, tout passe bien jusqu'a que ça me dit que le déroulement a été effectué avec succès. Je clique sur la base de donnée en question et j'ai aucune table qui s'affiche.Pour info, il faut créer un utilisateur dédié à la sauvegarde. Pour cela, j'ai fait :

    Puis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE USER 'backup'@'localhost' IDENTIFIED BY '';
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GRANT SHOW DATABASES, SELECT, LOCK TABLES, RELOAD ON *.* to 'backup'@'localhost' ;
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GRANT EVENT ON *.* to 'backup'@'localhost' with grant option;
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    grant show view on *.* to 'backup'@'localhost';
    et pour finir :Je modifie ensuite le mot de passe de mon nouvel user backup :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE mysql.user SET password=PASSWORD("nouveau_mdp") where User="backup";
    Dossier contenant les sauvegardes et droits sont correct. Je comprends pas car si je fais un export puis un import via phpmyadmin, ça marche sans souci.
    Quelqu'un aurait une idée ?
    Merci à vous tous pour votre aide

    Voici le script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    #!/bin/bash
     
    # Configuration de base: datestamp e.g. DDMMYYYY
     
    DATE=$(date +"Sauv_du_%d_%m_%Y")
     
    # Dossier où sauvegarder les backups (créez le d'abord!)
     
    BACKUP_DIR="/home/users/save_BD"
     
    # Identifiants MySQL
     
    MYSQL_USER="backup"
    MYSQL_PASSWORD="PASSWORD_OF_USER_backup"
     
    # Commandes MySQL (aucune raison de modifier ceci)
     
    MYSQL=/usr/bin/mysql
    MYSQLDUMP=/usr/bin/mysqldump
     
    # Bases de données MySQL à ignorer
     
    SKIPDATABASES="Database|information_schema|performance_schema|mysql|phpmyadmin"
     
    # Nombre de jours à garder les dossiers (seront effacés après X jours)
     
    RETENTION=14
     
    # ---- NE RIEN MODIFIER SOUS CETTE LIGNE ------------------------------------------
    #
    # Create a new directory into backup directory location for this date
     
    mkdir -p $BACKUP_DIR/$DATE
     
    # Retrieve a list of all databases
     
    databases=`$MYSQL -u$MYSQL_USER -p$MYSQL_PASSWORD -e "SHOW DATABASES;" | grep -Ev "($SKIPDATABASES)"`
     
    # Dumb the databases in seperate names and gzip the .sql file
     
    for db in $databases; do
    echo $db
    $MYSQLDUMP --force --opt --user=$MYSQL_USER -p$MYSQL_PASSWORD --skip-lock-tables --events --databases $db | gzip > "$BACKUP_DIR/$DATE/$db.sql.gz"
    done
     
    # Remove files older than X days
     
    find $BACKUP_DIR/* -mtime +$RETENTION -delete
    Edit :
    Je fini par quelques informations complémentaires
    Serveur de prod :

    Serveur de base de données
    Serveur : Localhost via UNIX socket
    Type de serveur : MySQL
    Version du serveur : 5.5.55-0+deb8u1 - (Debian)
    Version du protocole : 10
    Utilisateur : root@localhost
    Jeu de caractères du serveur : UTF-8 Unicode (utf8)

    Serveur web
    Apache
    Version du client de base de données : libmysql - 5.5.55
    Extension PHP : mysqli Documentation

    phpMyAdmin
    Version : 4.2.12deb2+deb8u2

    Serveur de TEST:
    Serveur de base de données
    Serveur : Localhost via UNIX socket
    Type de serveur : MariaDB
    Version du serveur : 10.1.23-MariaDB-9+deb9u1 - Debian 9.0
    Version du protocole : 10
    Utilisateur : root@localhost
    Jeu de caractères du serveur : UTF-8 Unicode (utf8)

    Serveur web
    Apache
    Version du client de base de données : libmysql - mysqlnd 5.0.11-dev - 20120503 - $Id: 76b08b24596e12d4553bd41fc93cccd5bac2fe7a $
    Extension PHP : mysqliDocumentation curlDocumentation mbstringDocumentation
    Version de PHP : 5.6.31-1+0~20170711121556.3+stretch~1.gbp94bb71

    phpMyAdmin
    Version : 4.6.6deb4

  2. #2
    Membre actif
    Homme Profil pro
    pas tout le temps.
    Inscrit en
    Janvier 2017
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : pas tout le temps.

    Informations forums :
    Inscription : Janvier 2017
    Messages : 50
    Par défaut
    Je possède un script
    non, non.
    tu as trouvé et adapté un script. point.

  3. #3
    Membre confirmé Avatar de Tofdu31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 93
    Par défaut
    AKAmêmeNom 2 messages dans ta longues vie sur developpez.net et dont un pour moi...
    Bon du coup, j'ai édité et modifier le post avant de m'attirer les foudres en écrivant "Je possède un script que j'ai récupérer sur le net"

    Remplacer donc par J'utilise un script...

  4. #4
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    Citation Envoyé par Tofdu31 Voir le message
    Bonjour à tous,

    J'utilise un script que j'ai récupérer sur le net afin de proceder aux sauvegardes de mes bases de données.

    Toutefois, en voulant tester une sauvegarde, j'importe celle ci dans ma base de donnée, tout passe bien jusqu'a que ça me dit que le déroulement a été effectué avec succès. Je clique sur la base de donnée en question et j'ai aucune table qui s'affiche.Pour info, il faut créer un utilisateur dédié à la sauvegarde. Pour cela, j'ai fait :
    regardes directement DANS la base en sql donc

    mais y'a toutes les chances que tu aies donc bien importé mais que tu aies aussi importé les permissions qui donc ne te vont pas.
    pour commencer ... ou alors tu as importé mais dans une autre base (pas le meme nom) un classique aussi (perso/preso ou chose du genre) ?

  5. #5
    Membre confirmé Avatar de Tofdu31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 93
    Par défaut
    frp31 merci à toi, et honte à moi car tu as bien trouvé mon souci. C'etait le nom de la base...

    Des fois on bloque pour des bêtises, je te remercie dans tous les cas de m'avoir mis sur la piste

    A plus tard

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] script php mysql pour diference compteur elec
    Par pawnies20 dans le forum PHP & Base de données
    Réponses: 38
    Dernier message: 05/08/2012, 00h55
  2. Recherche script PHP/MySQL pour collections/catalogues
    Par elraton dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 24/11/2010, 16h13
  3. script sauvegarde mysql à améliorer
    Par bezourox dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 24/12/2009, 13h58
  4. aide pour script php/mysql
    Par jem27 dans le forum Débuter
    Réponses: 18
    Dernier message: 27/03/2006, 18h08
  5. Script MS-DOS pour sauvegarde
    Par DiabloZizi dans le forum Windows
    Réponses: 5
    Dernier message: 03/03/2006, 11h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo