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

PostgreSQL Discussion :

[PSQL] Déconnexion d'une base


Sujet :

PostgreSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 255
    Par défaut [PSQL] Déconnexion d'une base
    Bonjour,

    Je génère une base de données temporaire à partir de fichiers .bat qui exécutent des scripts .sql.

    Fichier1.bat > Exécute Users.sql
    Fichier2.bat > Exécute Schema.sql et Tables.sql
    Fichier3.bat > Exécute Data.sql

    Enfin j'ai un dernier .bat qui exécute un sql qui supprime cette base temporaire.

    Fichier4.bat
    //Récupération du chamin des binaires PSql
    for /f "tokens=4*" %%i in ('REG QUERY "HKLM\SOFTWARE\pgAdmin III" /v "Helper Path"') do set vrChmSql=%%i %%j

    //Exécution du sql de suppression de la base temporaire
    "%vrChmSql%psql" -h localhost -d -U postgres <DATABASE\drop_database.sql
    drop_database.sql
    DROP DATABASE "maBaseTemporaire";

    Je ne peux supprimer ma base temporaire car un message m'indique qu'il existe déjà des utilisateurs connectés à cette base. Je présume que les connexions à cette même base correspondent à mes connexions pendant lesquelles j'ai exécuté les précédents scripts sql.

    Merci de m'indiquer comment je peux supprimer toutes ces connections...


    Merci par avance

    Sylvain

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Si les commandes psql connectées à la base temporaire sont terminées, ça ne doit pas être elles qui sont fautives car les connexions sont terminées aussi.
    Ceci étant il y a une erreur dans la commande citée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "%vrChmSql%psql" -h localhost -d -U postgres
    Derrière -d il faut mettre un nom de base.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 255
    Par défaut
    Effectivement j'ai mal recopié mon script.

    Initialement la commande était :
    "%vrChmSql%psql" -h localhost -d "maBaseTemporaire" -U postgres <DATABASE\drop_database.sql
    Et je me suis dit qu'en étant connecté sur cette base, le problème venait de là.

    J'ai donc changé pour:
    "%vrChmSql%psql" -h localhost -d "postgres" -U postgres <DATABASE\drop_database.sql
    mais le problème subsiste...

    Des idées ?

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Peut-être utiliser la vue pg_stat_activity pour savoir quel processus est connecté à la base en question. Ou bien, sous Unix, un simple ps -fu postgres peut suffire.

Discussions similaires

  1. Réponses: 4
    Dernier message: 20/12/2010, 23h07
  2. Réponses: 1
    Dernier message: 02/11/2008, 16h39
  3. taille maximale d'une base de donnée paradox
    Par Anonymous dans le forum Paradox
    Réponses: 5
    Dernier message: 14/02/2004, 17h39
  4. sauver une base
    Par phil_java dans le forum Administration
    Réponses: 3
    Dernier message: 07/03/2003, 17h08
  5. [Concept] Stabilité d'une base de donnée
    Par lassmust dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 03/07/2002, 16h16

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