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

SGBD Perl Discussion :

plantage de perl.exe avec une simple connexion avec dbi a une base Pg


Sujet :

SGBD Perl

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Points : 6
    Points
    6
    Par défaut plantage de perl.exe avec une simple connexion avec dbi a une base Pg
    Salut a tous,

    je suis en train de développer un petit script qui doit se connecter a une base de données en PostGreSQL sur un serveur Apache distant.

    J'ai donc utilisé le PDF de Djibril pour voir comment faire...
    Pour le test j'ai fait le code suivant :
    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
     
    #!/usr/bin/perl -w
    use strict;
    use warnings;
    use DBI;
    use DBD::Pg;
     
    my $BaseDeDonnees = "bdgeo";
    my $NomHote       = "localhost";
    my $login         = "operateur";
    my $MotDePass     = "operateur1";
     
     
    my $dbh = DBI->connect( "dbi:Pg:dbname=$BaseDeDonnees;host=$NomHote;",
    	$login, $MotDePass )
      or die
      "Connection impossible à la base de donnees $BaseDeDonnees !";
     
    print "connection ook";
    et la j'obtiens le message d'erreur suivante

    Perl Command Line Interpreter a rencontré un problème et doit fermer. Nous vous prions de nous excuser pour le désagrément encouru.

    avec la signature d'erreur suivante:

    AppName: perl.exe AppVer: 5.8.8.820 ModName: vxs.dll
    ModVer: 0.0.0.0 Offset: 00003717


    Est ce que quelqu'un a deja eu le probleme et / ou sait pourquoi et comment resoudre mon souci ???
    J'ai déjà chercher sur le forum et le net... j'ai vérifié mon installation des differents modules et tout et tout... et au final je n'ai rien trouvé concernant des gros plantages du meme genre...

    Merci d'avance a tout le monde !

  2. #2
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Rien qu'en regardant ton code sur le forum, tu peux t'apercevoir que la coloration syntaxique n'est pas bonne. Donc tu as des soucis de fermeture de guillemets.

    Sinon, tu n'as pas besoin de mettre use DBI suffit.
    Comment as tu installé le module DBI et DBD::Pg

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    Salut djibril,

    alors pour le guillemet... effectivement j'avais un souci mais uniquement dans mon copier coller sur le forum... dsl...

    Pour l'installation de DBI et DBD:g, j'ai été obligé de le faire à la main car mon activePerl ne peut pas se connecter au net... et j'ai essayé la méthode en ligne de commande, ça ne fonctionne pas mieux.
    La version de DBI c'est la 1.613, celle de DBD:g c'est la 2.17.1 et ma version de Perl c'est 5.8.8.820...

    Ca pourrait etre un probleme de version non compatible ?

    merci encore.

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Installation à la main ça veut dire ?

    Car là, tu as bien le net puisque que tu discute sur le forum, donc profite en pour installer les modules proprement via le net et ppm.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    c'est a dire que j'ai copier coller les fichiers .pm.

    sinon oui j'ai le net mais ppm n'est pas autorisé au travers du pare-feu de l'entreprise... et ça je n'y peux rien...

    voili voilou....

  6. #6
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    tu dois avoir un proxy alors, c'est ça ? Demande le mot de passe à ton admin système. Car copier les .pm ne suffit pas. Ces modules sont lourds et contiennent des dépendances.

  7. #7
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    Re salut,

    alors apres mettre debattu, entre le ppm, mon responsable micro et le proxy, j'ai enfin resolu le probleme de mettre a jour les modules qui vont bien...

    alors voila tete de mon code maintenant :
    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
    #!/usr/bin/perl -w
    use strict;
    use warnings;
    use DBI;
     
    # Parametres de connexion à la base de données
    my $BaseDeDonnees = "bdd";
    my $login         = "selecteur";
    my $MotDePass     = "selecteur1";
     
    # Connection à la base de données PostgreSQL
    my $dsn = "DBI:Proxy:hostname='dell007';port=6607;dsn=DBI:Pg:bdd"; 
    my $dbh = DBI->connect( $dsn,$login, $MotDePass )
      or die
      "Connection impossible à la base de donnees $BaseDeDonnees !";
     
    print "connection ook";
    et pour le coup maintenant ca ne plante plus (sauf si j'enleve les simples quotes autour de dell007) mais j'ai le message suivant
    DBI connect('hostname='dell007';port=6607;dsn=DBI: Pg:bdd','selecteur',...) failed: Cannot log in to DBI:: ProxyServer: Cannot connect: Invalid argument at C:/Perl/site/lib/RPC/PlClient.pm line 70. at C:/Perl/site/lib/Net/Daemon/Log.pm line 136.
    at D:/Eclipse_WorkSpace/TEST/test_DBI.pl line 13
    Connection impossible à la base de donnees bdd ! at D:/Eclipse_WorkSpace/TEST/test_DBI.pl line 13.
    Donc je suis en train de pensée que en fait ce n'est pas comme ca que je dois tenir compte du port d'entre dans la machine distante qui heberge la base de donné... je vais continuer a fouiller de ce cote... mais je crois que je me suis laissé embarqué par les histoires de proxy... bref si tu as une idee, djibril, je suis preneur...

    merci encore!

  9. #9
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Essaye déjà ceci :
    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
     
    #!/usr/bin/perl
    use strict;
    use warnings;
    use DBI;
     
    my $BaseDeDonnees = "bdd";
    my $NomHote       = "localhost";
    my $login         = "selecteur";
    my $MotDePass     = "selecteur1";
    my $port          = 6607; 
     
    my $dbh = DBI->connect( "dbi:Pg:dbname=$BaseDeDonnees;host=$NomHote;",$login, $MotDePass )
      or die ( "Connection impossible à la base de donnees $BaseDeDonnees !\n$DBI::errstr");
     
    print "connection ook";

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    Bon ben encore un echec

    ça plante de nouveau l'interpreteur perl...
    je ne comprends vraiment pas... en plus j'ai remarque un truc avec ma syntaxe avec le proxy: lorsque je mets la variable au lieu d'ecrire le nom de l'hote en dure dans le dsn et ben l'interpreteur perl plante ...
    C'est vraiment louche.... parce que je pensais que c'etait du à un vieux fichier corrompu mais j'ai vraiment tout reinstaller...

    Est ce que ca pourrait etre un probleme de parefeu ou d'antivirus ????

    je ne sais vraiment plus quoi faire.... passer à perl 5.12 ? ...

  11. #11
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Installe la dernière version de perl 5.10 (activeperl 5.10). Reinstalle proprement les modules DBI et DBD:g via ppm. Rajoute toi des repositories et retiens nous au courant.

  12. #12
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Essaye aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    my $dbh = DBI->connect( "dbi:Pg:dbname=$BaseDeDonnees;host=$NomHote;port=$port;",$login, $MotDePass )
      or die ( "Connection impossible à la base de donnees $BaseDeDonnees !\n$DBI::errstr");

  13. #13
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Essaye aussi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    my $dbh = DBI->connect("dbi:Proxy:hostname=$host;port=$port;dbi:Pg:dbname=$BaseDeDonnees",$login, $MotDePass )
      or die ( "Connection impossible à la base de donnees $BaseDeDonnees !\n$DBI::errstr");

  14. #14
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 11
    Points : 6
    Points
    6
    Par défaut


    probleme resolu... sans passer a la version suivante...
    alors deja je pense que l'interpreteur plantait car le driver DBD:: Pg utilise du C et je pense qu'il est mal foutu sur mon ordi... je suis donc passe a PgPP... ca plantait plus...

    et apres par coincidence je me suis rendu compte que windows ne fermait pas les pseudo tentatives de connexion à la base et donc j'avais des processus svchost en veux-tu en voila... et il bloquait tout le reste....
    j'ai tout fermer et c'est reparti...

    en tout cas merci pour tout les efforts et conseils, et merci pour les cours et tutoriels pour apprendre PERL : http://perl.developpez.com/cours/
    bon courage
    à bientot !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/11/2013, 10h34
  2. Interdire une deuxième connexion avec le même compte
    Par eprevot dans le forum Langage
    Réponses: 12
    Dernier message: 23/01/2013, 19h07
  3. Réponses: 1
    Dernier message: 02/01/2011, 20h57
  4. [JBoss Portal] ouverture d'une simple popup(non portlet) depuis une portlet
    Par mnemonic78 dans le forum Portails
    Réponses: 0
    Dernier message: 27/10/2009, 20h45
  5. Afficher une simple liste avec GTK
    Par gedeon555 dans le forum GTK+
    Réponses: 2
    Dernier message: 04/11/2007, 11h15

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