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

Administration MySQL Discussion :

Exécuter importation zip>mysql comme tâche d'arrière-plan (linux)


Sujet :

Administration MySQL

  1. #1
    Membre habitué

    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 101
    Points : 141
    Points
    141
    Par défaut Exécuter importation zip>mysql comme tâche d'arrière-plan (linux)
    Bonjour à tous,

    J'ai posté ce message sur le forum Linux, mais peut-être que la communauté des utlisateurs mysql est aussi confrontée à ce problème.

    J'ai un problème qui concerne à la fois les tâches d'arrière-plan en Linux et mysql (sous Ubuntu Hardy).

    Il s'agit d'un gros fichiers Zip que je voudrais dézipper et importer dans une base de données mysql.
    Comme je ne dispose que d'une connexion SSH sur le serveur et qu'il s'agit d'une grosse base de données, je souhaiterais que le processus d'importation se déroule en arrière-plan, afin que son exécution continue une fois sorti de l'accès SSH.

    J'ai donc encodé:

    #sudo gzip -dc monfichier.zip | mysql -u myUser --password='monMotdePasse' maBaseDeDonnées &

    Cependant le processus s'arrête dès que je ferme la console SSH (alors que la même commande en tâche d'avant-plan s'exécute normalement et charge bien la base de données).


    Je suis un peu calé. J'ai vraiment besoin de ce type de commande car à terme je devrai importer des bases de données volumineuses (>100 Gigas).
    Pourriez-vous m'indiquer si le suffixe "&" est adéquat pour ce genre de tâche, et si ce n'est pas le cas, quelles solutions alternatives pourraient exister?

  2. #2
    Membre habitué

    Profil pro
    Inscrit en
    Février 2009
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2009
    Messages : 129
    Points : 159
    Points
    159
    Par défaut
    Effectivement quand tu quittes ta connexion SSH, tous tes processus sont arrêtés et le & n'y change rien.

    Tu peux utiliser screen (fais donc un petit man screen pour l'utilisation) ou sinon mettre ton script en crontab.

    Stéphane

  3. #3
    Membre habitué

    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 101
    Points : 141
    Points
    141
    Par défaut
    Hello

    Merci pour ta réponse, je viens de trouver une solution en utilisant l'utilitaire 'at' sous Ubuntu et ça a l'air de marcher donc crontab était une bonne piste.

    Ceci dit j'ai fait un petit test avec un fichier dezippé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql -u myUser --password='monMotdePasse' maBaseDeDonnées < monFichierDezippé &
    Et apparemment la tâche semblait continuer même après la fermeture de la console SSH (un "SELECT count(*)" sur une table m'indiquait qu'elle continuait à être chargée).

    Le problème semblait plutôt venir d'une impossibilité de lier entre elles deux tâches d'arrière plan en faisant du piping sous Ubuntu (la première partie de la commande avec le dézippage était en fait une tâche d'avant-plan).

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

Discussions similaires

  1. Exécuter une tâche en "arrière plan" dans un container web
    Par Tyler_Durden dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 09/08/2011, 15h06
  2. Empêcher la double exécution d'une tâche en arrière plan.
    Par Paul Van Walleghem dans le forum VB.NET
    Réponses: 2
    Dernier message: 29/08/2010, 16h12
  3. Exécuter import MySql depuis application Java
    Par tyler-durden01 dans le forum JDBC
    Réponses: 2
    Dernier message: 15/06/2010, 11h34
  4. Impossible de faire du piping entre deux tâches d'arrière-plan
    Par CetTer dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 18/05/2009, 11h27
  5. [Système] PHP Cron tâche en arrière plan
    Par Hug0_76 dans le forum Langage
    Réponses: 1
    Dernier message: 12/03/2007, 09h23

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